私は使用しますGHUnit
。、などIBOutlet
の のプロパティをテストしたい。isHidden
delegate
myView
が隠されているかどうかをテストするために、以下のコードを試しました:
- (void)testViewDidLoad
{
// Call view on viewcontroller which will load the view if not loaded
[testClass view];
// Tests
testClass.myView.hidden = YES;
if (testClass.myView.isHidden) {
GHTestLog(@"Hidden");
}
else {
GHTestLog(@"Not Hidden");
}
}
これは常にログNot Hidden
に記録しますが、ログを記録する直前に設定し hidden = YES
ます。
どうしてこれなの?
delegate
行の下で試したのプロパティをテストするIBOutlet
には:
GHAssertNotNil(testClass.textField.delegate, @"delegate is nil.");
で失敗しますReason : ((testClass.textField.delegate) != nil) should be FALSE.
なにが問題ですか?
編集: 動作しないコードの下で試しました。
[testClass view];
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard"
bundle:[NSBundle bundleForClass:[self class]]];
GHAssertNotNil(storyboard, nil);
// Tests
GHAssertTrue(testClass.myView.isHidden, nil); // This fails