![]() |
1
6
您不应该模拟policyManager,您应该模拟updatepolicy方法,因为您仍然希望测试dosometing方法的功能。 而且,你可能在树上测试得太高了。 您应该在隔离状态下测试inactivepolicy()方法,并且只测试该功能是否有效,然后应该在隔离状态下再次测试dosomething()方法。 这里有两个独立的代码单元,您应该有专门测试每个单元的单元测试。 |
![]() |
2
0
漫步 我不太明白。
如果你不测试它被设置为
充其量,我会考虑有一个“嘲弄”的数据存储,而不是NHibernate,那什么都不做。在这种情况下,它将在
这样,如果您适当地设置回购,您可以看到它正在被设置。 尽管我想知道它的意义,因为也许你的nhibernate代码有一个bug,实际上你要检查的只是一个布尔值的设置。 总结 为什么不让一个测试开发数据库来运行这个测试呢? |
![]() |
3
0
我认为测试是错误的,因为实际上您正在测试模拟对象及其对策略对象的活动状态的影响,而不是测试原始对象,即使在真实场景中测试通过,policyManager的行为可能会有所不同,并导致DoSometing失败。 也许您最好在单元测试中测试policyManager及其updateinactive方法,并 完整性测试,与真正的PolicyManager一起测试剂量。 |
![]() |
Developer · 使用MOQ嵌套类和接口C的单元测试# 7 年前 |
![]() |
Graeme · 看看有什么传给了一个Mock? 7 年前 |
![]() |
erexo · Moq模拟。Of<Obj>vs new Obj(); 7 年前 |
![]() |
Dede · Moq方法调用序列比较 7 年前 |
![]() |
filur · 管理复杂单元测试模拟数据 7 年前 |