2013-12-21 4 views

답변

6

내가 알지 못했던 이것을 테스트하기위한 키위 표현이 있습니다.

[[editAuthorViewController should] beKindOfClass:[EditAuthorViewController class]]; 

EditAuthorViewController.m 파일이 내 테스트 대상에 추가 되었기 때문에 처음에는 실패했습니다. [[EditAuthorViewController class]가 테스트 번들 내부에서 호출 될 때 다른 포인터를 반환하면 비교가 실패합니다.

이 문제를 해결하려면 내 테스트 대상의 컴파일 소스에서 EditAuthorViewController.m을 제거해야했습니다.

+0

나는 키위를 사용한 적이 없지만 위에에서 추론 한 것부터 ... 그것은 작동해야합니다 .KindOfClass는 위의 줄과 같은 BOOL을 반환합니다. –

+0

필자는 테스트 타겟의 컴파일 소스에서'EditAuthorViewController.m'을 제거하여 위의 모든 행을 작동시킬 수있었습니다. 여기 문제와 해결책에 대한 훌륭한 설명이 있습니다 : "클래스와 주입에 관한 부작용"에서 http://www.objc.io/issue-1/testing-view-controllers.html. –