2011-07-18 8 views
25

Xcode의 시뮬레이터에서 애플리케이션 테스트를 실행할 수 있기 때문에 테스트를 로직 및 애플리케이션 테스트로 분리하는 것이 실행 시간을 단축 할 수 있다는 점을 제외하면 어떤 이점이 있습니까?애플리케이션 테스트 VS 로직 테스트

Apple docs 따라 분화 :

  • 로직 테스트. 이 테스트는 클린 룸 환경에서 코드의 올바른 기능을 확인합니다. 즉, 코드가 응용 프로그램 내에서 실행되지 않습니다. 논리 테스트를 통해 매우 구체적인 테스트 케이스를 조합하여 매우 세부적인 수준 (클래스의 단일 메서드) 또는 워크 플로의 일부로 코드를 실행 (하나 이상의 클래스의 여러 메서드) 할 수 있습니다. 논리 테스트를 사용하여 코드의 스트레스 테스트를 수행하여 실행중인 응용 프로그램에서는 거의 발생하지 않는 극한 상황에서 올바르게 작동하는지 확인할 수 있습니다. 이 테스트는 예상치 못한 방식으로 사용될 때 올바르게 작동하는 견고한 코드를 생성하는 데 도움이됩니다. 논리 테스트는 iOS Simulator SDK 기반입니다. 그러나 iOS 시뮬레이터에서는 응용 프로그램이 실행되지 않습니다. 테스트중인 코드는 해당 대상의 빌드 단계에서 실행됩니다.

  • 응용 프로그램 테스트. 이 테스트는 실행중인 응용 프로그램에서 코드의 기능을 확인합니다. 애플리케이션 테스트를 사용하여 사용자 인터페이스 컨트롤 (아웃렛 및 액션)의 연결이 그대로 유지되고 애플리케이션에서 작업 할 때 컨트롤 및 컨트롤러 객체가 객체 모델과 올바르게 작동하는지 확인할 수 있습니다. 응용 프로그램 테스트는 장치에서만 실행되기 때문에 이러한 테스트를 사용하여 장치의 위치 파악과 같은 하드웨어 테스트를 수행 할 수도 있습니다./단위 테스트가 하나 또는 몇 방법, 예를 들어, 매우 작은 동작을 테스트하는 데 사용되는

    로직 테스트 : 로직 테스트에 비해

+0

이 질문은 링크가 작동하지 않아 관련이 없습니다. 자세한 내용은 http://stackoverflow.com/q/41404613/62를 참조하십시오. –

답변

4

응용 프로그램 테스트는 정말 다른 두 가지에 사용됩니다 "내가 이런 식으로 내 물건을 만들었다는 것을 감안할 때, 내가 기대하는 특정 재산의 가치는 무엇입니까?"

그러나 응용 프로그램 테스트은 큰 그림을 테스트하는 데 사용됩니다. "특정 표보기 셀을 탭하면 상세보기에서 올바른 데이터를 얻을 수 있습니까?"

+1

물론 그렇습니다.하지만이 테스트를 다른 테스트 파일/번들로 분리하면 어떤 이점이 있습니까? – nduplessis

+0

그냥 똑같은 얘기를하고 있습니다. 저는 주로 로직 테스트에 관해 이야기 할 때 Xcode (OCUnit 또는 유사)에서 응용 프로그램 테스트 및 단위 테스트에 대해 이야기 할 때 Instruments의 UIAutomation 테스트를 의미합니다. –

+0

글쎄 ... 논리 테스트와 같이 작고 상세한 테스트를 작성하는 것이 더 쉽습니다. 왜냐하면 여러분은 어플리케이션 테스트로서 그 중 일부를 할 수있을지라도 코드와 작성 목적 -c 코드에 더 가까이 있기 때문입니다. 다른 점은 똑같은 사실입니다. 현재 작업에 적합한 도구를 사용하는 문제가됩니다. –