【发布时间】:2011-12-11 21:50:40
【问题描述】:
我想为一个延迟调用另一个方法的方法编写黑盒单元测试。有点像这样:
- (void) doSomething {
// Do something
[self performSelector:@selector(doSomethingLater) withObject:nil afterDelay:kDelay];
}
- (void) doSomethingLater { }
其中kDelay 是常量,doSomethingLater 是私有的。问题是kDelay 是 1 秒,我不想减慢单元测试的执行速度。
在黑盒方法下(或尽可能多地)对doSomething 进行单元测试的最佳方法是什么?
唯一想到的就是在类中添加一个方法来更改kDelay 的值,但这可能会被其他开发人员意外使用。有没有侵入性较小的替代方案?
【问题讨论】:
标签: objective-c unit-testing black-box-testing