我们一直在研究使用新的Fakes framework来帮助我们提高在.net 4.0框架下运行的一些遗留代码的测试覆盖率。不幸的是,似乎我们无法升级到.net 4.5。我是否正确地说我们不能将Fakes框架与.net 4.0(和VS2012)一起使用,而我们需要使用现在不支持的Moles框架?
答案 0 :(得分:4)
虽然我一般不喜欢鼹鼠,但我理解他们可以在遗留代码测试中获得帮助。以下是您可以考虑的其他一些工具。但严重的是,我讨厌这些类型的框架,因为正确的方法是编写可测试的代码并重构不是的遗留代码(我知道这并不总是容易或可能)。我认为moles摆脱了单元测试的主要好处之一,就是它迫使你编写好的代码,如下所述:
以下是需要考虑的几件事:
还有一个免费的,简单的JustMock版本,不知道它包含什么。
答案 1 :(得分:2)
您应该使用Visual Studio 2012 Ultimate或Premium Update 2来使用Microsoft Fakes,并且单元测试可以针对早期版本的.NET框架。
答案 2 :(得分:0)
我知道这不是你问的问题,但你考虑/评估过非微软的模拟框架吗?
Rhino.Mocks非常受欢迎且非常强大,而FakeItEasy是growing in adoption。它的文档并不丰富,但它非常直观且易于使用。
答案 3 :(得分:0)
我用假货测试3.5组件,自己的假货测试编译为4.5。我没有尝试为3.5编译它们,但它们不打算在部署机器上运行。
答案 4 :(得分:0)
Microsoft Fakes框架支持与Visual Studio 2012本身相同的.NET版本。这包括版本4.5,4.0,3.5,3.0和2.0。