【发布时间】:2011-08-17 15:14:25
【问题描述】:
我正在使用 Typemock 进行一些单元测试。我已经模拟了静态类 Widget。我想模拟 Widget.GetPrice(123) 的返回值来返回值 A。
Isolate.Fake.StaticMethods<Widget>();
Isolate.WhenCalled(() => Widget.GetPrice(123)).WillReturn("A");
我还想验证是否未调用 Widget.GetPrice(456)。
Isolate.Verify.WasNotCalled(() => Widget.GetPrice(456));
WasNotCalled 似乎没有考虑参数。测试回来说它失败了 b/c Widget.GetPrice 实际上被调用了。
我能想到的唯一方法是调用 DoInstead 并在调用 Widget.GetPrice(456) 时增加一个计数器。测试结束时将检查计数器是否增加。有没有更好的方法来做到这一点?
【问题讨论】:
标签: c# unit-testing static-methods typemock