在 Roy Osherove 的书 [Unit Testing][1] 中,他解释说单个单元测试应该包含 0 到 1 个模拟。他建议,如果您的测试没有在模拟上断言,那么根本不要使用模拟。他进一步演示了如何使用隔离框架来生成存根,这些存根的创建方式与模拟相似。他没有建议限制每次测试创建的存根数量。
我的问题是:这些建议可以应用于所有隔离框架(或所有流行的 C# 框架)吗?换句话说,是否有一个框架只能生成模拟 - 而不是存根?是否有不区分模拟和存根的隔离框架?
我只是好奇 Osherove 的建议可以多么容易地转换为编码标准。
[1]: http://被测系统根本没有被测试,取而代之的是从模拟返回的数据是正在测试的。