我的问题是我正在尝试从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)
答案 0 :(得分:1)
我认为你需要在这里更具体地了解这个包。当你为这样的包传递nil
时,它意味着“使用主包”,但如果我没记错,运行测试时的主包将是测试工具应用程序包而不是你的代码。我认为您需要确保将故事板作为资源包含在测试目标中,然后您需要在测试中明确指定要从测试目标包而不是主包中加载故事板资源。
编辑:通常,这样做的好方法可能是通过[NSBundle bundleForClass: [MyClassThatIKnowIsInTheRightBundle class]]
。