我有方法中的代碼斷言()參數落在一個給定的範圍內。我想用SenTest測試用例來測試非法參數。使用SenTest來測試一個斷言
我的第一個假設是我應該使用STAssertThrows(...),但是這個報告在斷言失敗時不會引發異常。我可以通過STAssert ...宏捕獲assert()失敗嗎?
[更新,以提供一個例子]
在類Foo.m
@interface Foo : NSObject {
NSUInteger count;
NSUInteger max;
}
@end
@implementation Foo
-(void) bar:(char) c {
assert(count < max);
...
}
@end
在類TestFoo.m
@interface TestFoo : SenTestCase {
Foo testFoo_;
}
@end
@implementation TestFoo
-(void) testBar {
STAssertXXX(YYY);
}
@end
可以使用哪些XXX YYY和測試失敗或者方法欄中的斷言:?
也許我們可以幫助你更容易,如果你向我們展示了你正在嘗試的斷言的例子。 –