2
신속하게 테스트하려면 응용 프로그램 번들에 테스트 파일을 추가하고 NSBundle : pathForResource를 사용하여 위임에로드하십시오. 이것은 효과가 있었다.응용 프로그램 번들에서 파일을로드 할 수 있지만 테스트 응용 프로그램 번들에서 파일을로드 할 수 없음
그러나 지금은 단위 테스트 유형의 대상을 만들고이 새로운 대상에 파일과 코드를 추가했지만로드 할 수 없습니다.
나는 복사 번들 리소스를 사용하여 테스트 대상에 파일을 추가 한,이 그것을로드의 전체 코드입니다 :
NSBundle *mainBundle = [NSBundle mainBundle];
NSString *xmlFilePath = [mainBundle pathForResource:@"TestServerResponse" ofType:@"xml"];
STAssertNotNil(xmlFilePath, @"Unable to open file TestServerResponse.xml")
내가 알아낼 수 없습니다 내가 그것이로드 할 수없는 이유 앱 번들 타겟의 일부 였지만 지금은로드하지 않는 테스트 번들로 이동했습니다. 테스트 케이스를 들어
NSBundle *testBundle=[NSBundle bundleForClass:[self class]];
NSString *testBundlePath=[testBundle pathForResource:@"TestServerResponse" ofType:@"xml"];
, 주요-번들 또는 앱의 주요 번들되지 않습니다 :
감사합니다. 두 번 호출의 차이점과 원래 번 호가 테스트 번들에서 작동하지 않는 이유는 무엇입니까? – Gruntcakes
main-bundle과 bundle-for-self-class 간의 차이가 있습니다. :) –