我正在爲iOS創建靜態庫,並試圖爲其單元測試獲取代碼覆蓋率數據。我正在使用CoverStory來可視化生成的代碼覆蓋率文件。測試異常時,XCode上的代碼覆蓋率結果不正確
我得到大多數測試的正確信息。
但是,驗證應拋出異常的任何測試都未被標記爲測試。
例如,該方法
- (void)shouldThrow:(BOOL)throw {
if (throw)
@throw [NSException exception...];
NSLog(@"not thrown");
}
與測試
- (void)testShouldThrow {
STAssertThrows([myObject shouldThrow:YES], @"Should have thrown an exception");
STAssertNoThrow([myObject shouldThrow:NO], @"Should not have thrown an exception");
}
測試通過了所有測試(即,異常被正確投擲)。但是,代碼覆蓋率不顯示100% - 與@throw
有關的行未被標記爲測試。
任何想法?
這就是我害怕:(:(我已經設置了斷點,所以我知道它正在測試,但它會很高興能夠自動化測試!) – deanWombourne 2012-03-19 17:45:57