2010-01-19 2 views
2

유닛 테스트를 실행할 때 외부 리소스 (이미지)를로드 할 때 오류가 존재하지 않는 것처럼 실패합니다. xcode에서 단위 테스트 대상에 리소스를 추가했습니다. 나는 다음에 무엇을 시도해야할지 모른다. 나는적인 Cocos2D 프레임 워크를 사용하고Objective-C 유닛 테스트에서 내 리소스를 찾을 수 없습니다.

, 나는 실제로 전무를 반환 UIImage imageWithContentsOfFile 를 호출 보인다 단위 테스트 AtlasSpriteManager *at = [AtlasSpriteManager spriteManagerWithFile:@"player2.png" capacity:50];

내에서 다음과 같은 코드를로드하려고합니다. 단위 테스트를 실행하기 전에 필요한 이미지는 성공적으로 패스, 응용 프로그램 지원 디렉토리에 복사되지 않는 것 같다

image = [uiImage CGImage]; if(image == NULL) { [self release]; NSLog(@"Image is Null"); return nil; }

같은 오류가 발생합니다

실제 코드가 보인다. 이것이 문제인지 확실하지 않지만 이미지가 먼저 복사되고 유닛 테스트가 이미지를 찾을 수 있도록 빌드 순서를 변경하는 방법이 있습니까?

답변

1

자원이 대상에 포함되지 않을 가능성이 큽니다. 따라서 테스트 번들의 스크립트 실행 단계를 시작하기 전에 테스트에 필요한 리소스를 테스트 번들로 복사하는 "리소스 복사"단계가 있는지 확인하십시오.

+0

정기적으로 내 리소스에 대한 적절한 대상을 포함하지 못했습니다. 실제 코드 오류 이상으로 경보를 발생시키는 것입니까? – pestilence669

+0

사본 번들 자원 단계가 있습니다. 단위 테스트에 사과 설명서를 따르기 때문에 복사본 번들 리소스 PROJNAME.octest를 추가 한 복제 프로젝트가 있습니다.이 확장 된 이미지 리소스가 있습니다. 그런 다음 유닛 테스트 번들 대상에는 내 이미지가 포함 된 사본 번들 리소스 단계가 있습니다. 내가 스크립트를 실행하기 전에 그것이 목표를 확장 할 때 트리에서 더 높다고 가정합니다. – jacob

관련 문제