我正在測試我的一個UIViewController上的viewDidLoad事件。UnitTests和iOs:viewDidLoad觸發兩次
- (void)testMyView
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
MyViewController *vc = [storyboard instantiateViewControllerWithIdentifier:MYID];
[vc viewDidLoad];
STAssertNotNil(vc, @"MyViewController should not be nil");
}
如果我刪除線[vc viewDidLoad];
,則viewDidLoad
永遠不會觸發。
如果我讓[vc viewDidLoad];
到位,viewDidLoad
被觸發兩次。
我明白,視圖是惰性加載,但我怎樣才能避免這種行爲?
有沒有關於查看測試的最佳做法?
使用viewDidAppear而不是viewDidLoad中... – lakesh
你需要調用,而不是'-viewDidLoad' ...它贏得了'-loadView'法」被調用兩次。 – holex
嗯,那是我的第一次嘗試,但它不起作用。 'vc.view.hidden = NO;'做了詭計。 –