Loading
2015. 7. 30. 16:08 - Twocap_Dev

Unity Test Tools - Intergration Test

Intergration Test Framework


Unity Test Tools > Intergration Tests > Intergration Tests Runner
UnityTestTools > Examples > IntergrationTestsFrameworkExamples > ExampleIntegrationTests.Scene

Test Component

Test name - Integration Test view 에서 보이는 이름
Included platforms - 테스트에 포함할 플랫폼 (Nothing시 ignore 체크한 것과 같습니다)
Timeout - 테스트하는 시간 (초과시 실패)
Ignore - 전체 테스트 실행시 테스트 무시
Succeed on assertion - Assertion 이 모두 통과될 경우 성공 (Assertion Component와 함께 사용)
Expect exception - 선택시 예외가 발생해도 테스트가 실패하지 않게됩니다.
Expected exception list - 기대되는 예외에 대한 값, 비어있을 경우 모든 예외 유형이 예상되는 것으로 간주하며, 복수지정시 "," 구분
Succeed when exception is thrown - 기대되는 예외 발생시 통과 (미체크시 예외가 발생해도 통과는 안됨)


Test Component 와 Call Testing


Test2 - Timeout 은 Timeout이 0.1로 설정되어있기 때문에 테스트하자마자 timeout 으로 Failed 처리가 됩니다.

Test Component 를 보시면 몇몇 설정을 할 수 있고요.




같은 Test Component 인데 이번에는 안에 내용이 아무것도 없지요.


이유는 Hierarchy 를 보시면 Test2 - Timeout 과 같은 Test Component 의 상위 Test Component 이기 때문입니다.

이것은 맨 우측 Intergration Test view 를 보시면 이유를 짐작하실 수 있습니다. Test를 묶는 단위로 사용할려고 하는 것입니다.


또 하나의 다른 기능은, 테스트 공유에 있습니다.


Hierarchy 를 보시면 아래와 같은 구조를 띄는데요. CubeTriggerFailure 가 Test2, Test3 의 테스트 공유를 해주는 부분입니다.

테스트 노드아래에 배치되지 않을 경우 전체 테스트에서 활성화됩니다.


Failing tests (Test Component)

- Falling Cube (Test Component)

  - CubeTriggerFailure (Calling Test)

  - Test2 - Timeout (Test Component)

    - Sphere

  - Test3 - Failure (Test Component)

    - Sphere



Call Testing 를 보시면 Call on Method 가 있는데요. 저기에 해당하는 것이 불리었을때 Fail, Pass 를 정해서, 다른 Test와 공유시키는 것입니다.


Intergration Test view 에서 Run All 또는 Failing tests 를 선택한 후 Run Selected 를 누르면 테스트가 실행됩니다.


Test2는 0.1 timeout 이기 때문에 무언가 상황도 못보고 timeout 되면서 Fail이 되고, Intergration Test View에서 시계모양의 아이콘이 나옵니다.


Test3 는 Test3 안의 Sphere가 CubeTriggerFailure(Cube)와 충동을 일으키는데, Call Testing이 On Trigger Enter 시에 Fail로 되어있어서 Fail이 뜨게 되지요. (Method to Call 을 pass로 하면 pass가 됩니다)




플랫폼에서 테스트를 진행하는 내용입니다.


Unity Test Tools > Platform Runner > Run on platform 을 하면 위 창을 볼 수 있으며,

Unity Test Tools > Platform Runner > Run current scene 을 하면 바로 실행됩니다.




저는 Web 환경으로 지정했기 때문에, 해당 Scene에 대한 테스트가 자동적으로 실행되고, 위와같이 결과를 확인할 수 있습니다.


'Unity' 카테고리의 다른 글

Unity Test Tools - Unit Test Runner  (0) 2015.07.30
Unity Test Tools - Assertion component  (0) 2015.07.30
Unity Test Tools  (0) 2015.07.29
Microsoft Visual Studio Tools for Unity  (0) 2015.07.28
int.Parse FormatException, UTF-8  (0) 2015.07.27