任何Rhino专家可以通过给出一个合适的例子向我解释Mock和Stub之间的区别吗?应该在哪里使用 Stub 而不是 Mock 或其他方式?
当您要验证对象上是否发生了某些事情(例如调用方法)时,您应该使用模拟。 当您只想让对象参与测试以返回值但它不是您正在测试的东西时,您应该使用存根。 没有满足期望的存根永远不会通过测试。
我认为一般规则应该是在测试中只应该有一个模拟对象,但可能有几个向模拟对象提供信息的存根。 我相信测试中超过 1 个模拟就是代码味道。
虽然不是 Rhino 示例 Martin Fowler 对差异进行了描述
一样