2017-10-22 1 views
0

UI 테스트를 한꺼번에 실행하려고합니다. 개별적으로 실행할 때 모든 테스트가 제대로 작동하지만, 자동으로 모두 실행하면 Xcode가 다른 테스트를 성공적으로 실행하기 위해 앱의 위치를 ​​업데이트하지 않기 때문에 테스트가 실패합니다.UI 테스트 수동 전달, 자동 실행시 실패

명확하게하기 위해 첫 번째 테스트는 signUpTest이므로 테스트를 실행하면 작동하고 두 번째 테스트 인 signUpMyInfo 테스트로 이동합니다. 내 문제는이 두 번째 테스트는 앱이 첫 번째 단위 테스트가 끝나는 두 번째보기 컨트롤러로 이동 한 후에 만 ​​실행되지만 두 번째 테스트가 몇 가지 이유로 시작될 때 Xcode가 앱을 첫 번째보기 컨트롤러에 다시 던졌습니다. 두 번째 테스트가 실패하게됩니다.

즉, 두 번째보기 컨트롤러에 남아서 두 번째 테스트를 실행하는 대신 첫 번째 테스트가 성공적으로 완료된 후 앱이 첫 번째보기 컨트롤러로 돌아 오는 이유가 명확하지 않습니다.

또한이 문제가 항상 발생하는 것은 아니므로 Xcode는 두 번째 테스트가 성공적으로 통과하는 다음보기 컨트롤러로 나를 던지기도하지만이 문제는 충분히 도움이되는 사람을 괴롭 히고 있습니다. 내가 해결 : p

답변

1

Xcode가 실행되면 앱이 종료되고 각 테스트가 시작될 때 다시 실행해야합니다. 이는 테스트 독립성을 독려하여 각 테스트를 독립적으로 수행 할 수있게하여 테스트가 실패하면 다른 테스트의 결과가 아닌 테스트가 실패했음을 알 수 있습니다. 이를 통해 테스트 실패를 쉽게 진단하고 테스트 결과를보다 유익하고 정확하게 만들 수 있습니다.

첫 번째보기 컨트롤러에서 두 번째보기 컨트롤러로 이동하려면 두 번째 테스트에서 코드를 추가해야합니다. 이것은 언뜻보기에는 중복되는 것처럼 보일 수 있지만 위에서 설명한 바와 같이 이것은 테스트 스위트의 큰 장점입니다.

+0

입니다. 감사:) – benjamin852

관련 문제