Я хочу проверить окно приложения делегата приложения как ключевое окно после запуска. Поэтому я пишу следующие тесты.Тестирование модуля keyWindow с использованием OCUnit вызывает ошибку
- (void)setUp
{
window = [[UIWindow alloc] init];
appDelegate = [[FGAppDelegate alloc] init];
appDelegate.window = window;
appDidFinishLaunchingReturn = [appDelegate application: nil didFinishLaunchingWithOptions:nil];
}
- (void)tearDown
{
window = nil;
appDelegate = nil;
}
- (void)testWindowIsKeyAfterApplicationLaunch
{
STAssertTrue(window.keyWindow, @"App delegate's window should be key.");
}
В моем приложении делегат метода Applicaton: didFinishLaunchingWithOptions:
...
self.window.rootViewController = self.tabBarController;
[self.window makeKeyAndVisible];
return YES;
}
Испытание не удалось, и сказал мне window.keyWindow должно быть правдой. Что-то не так? Как я могу исправить тест?
Благодарим вас за ответ. Я действительно смотрел ваше видео на модульном тестировании. Вернемся к вопросу, где вы предлагаете мне использовать метод? Я немного смущен тем, как это повлияет на тест. – newguy
Вызовите '-runForShortTime' перед тем, как вы проверите ключевое окно. –