Не могу получить доступ к раскадровке из SenTeskingKit - PullRequest
0 голосов
/ 12 февраля 2012

мой вопрос в том, что я пытаюсь протестировать некоторые вещи из SenTesking Kit.

-(void)testStoryboard {
    storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
    STAssertNotNil(storyBoard, @"Can't access the storyboard");
}

Я также добавил файл UIMainStoryboardFile в список DemoTests.plist, но получаю такую ​​ошибку:

error: testStoryboard (DemoTests) failed: Could not find a storyboard named 'MainStoryboard' 
in bundle 
NSBundle</Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/Developer/usr/bin> (loaded)

1 Ответ

1 голос
/ 12 февраля 2012

Я думаю, вам нужно быть более конкретным в отношении связки здесь. Когда вы передаете nil для такого пакета, это означает «использовать основной пакет», но если я правильно помню, основной пакет при выполнении тестов будет комплектом приложений, использующих тесты, а не вашим кодом. Я думаю, вам нужно убедиться, что раскадровка включена в качестве ресурса в цель тестирования, а затем вам нужно явно указать в тесте, что ресурс раскадровки должен загружаться из вашего целевого комплекта теста, а не из основного комплекта.

РЕДАКТИРОВАТЬ: Как правило, хорошим способом сделать это может быть передача [NSBundle bundleForClass: [MyClassThatIKnowIsInTheRightBundle class]].

...