当涉及到测试时,我已经退回到它了。我现在是一个超级粉丝,经常做一些像TDD这样的事情。在VS2010中,为了设计和回归,我使用了MSTEST。这很棒--我所有的项目都是开源的,并且无论如何都与我的工作(物理研究@大学)联系在一起。然后我进入了Pex,它帮助我找到了各种我没有寻找到的边缘案例。总的来说,这是我编写代码方式的一次革命。这让我认识了Moles。也很酷(但我还在学习)。
不幸的是,我只能访问VS的Pro版本(这是我的大学作为站点许可证获得的)。其结果是,Moles不再有效,升级后,Fakes也不再有效。我想下一个版本的Pex将依赖于伪装,这也是一个终极版的选择。
因此,我发现自己现在正在寻找具有类似功能的开源工具。有没有一篇文章或资源比较了一些比较成熟的OSS项目?我发现自己有点不知所措(即有太多的选择)。虽然我喜欢这种模拟功能,但它只是一个工具,而不是我想花空闲时间玩的工具(这是我大部分.NET编程的地方)。
我假设,如果不花真金白银,Pex是不可能被取代的。
在此期间,似乎我应该看看是否有比MSTEST更好的其他测试框架。MSTEST相当不错,但开始感觉到了一些限制(我还没有探索过VS2012中的任何新特性)。
非常感谢你的帮助,提前,真的,通常我会尝试问一个更具体的问题,但我在这里有点不知所措。
发布于 2012-11-25 04:34:59
我不知道在.NET中测试是否有替代PEX的方法。
除了Fakes框架,还有许多替代方案,比如Moq或Rhino Mocks。更完整的列表请参见here。就我个人而言,我使用Moq是因为我喜欢fluent API,而且它支持两种classical and mockist风格的测试。
Fakes框架还包括为单元测试不友好的类型(例如,密封类型或静态方法)生成填充程序的能力。TypeMock Isolator可能是唯一的替代方案,但它不是免费的。如果做不到这一点,您可以编写自己的测试友好包装器,或者使用某种形式的duck typing。
Visual Studio2012为测试跑步者提供了一个插件架构,Peter Provst维护了一个插件here列表。我认为VS2012现在使用vstestconsole而不是MSTest,它在2012年运行单元测试的速度肯定比2010年快得多。与MSTest相比,NUnit对参数化测试的支持更好。
发布于 2013-06-15 15:31:37
https://stackoverflow.com/questions/13537575
复制相似问题