在Brownfield开发工作时只能解决方案吗?
题
我正在启动一个维护项目,我需要使用遗留代码并创建新的。新的我可以创建基于适当的接口的开发,我可以使用MoQ进行适当的单元测试。由于它们没有正确的编码来模拟对象,我无法对遗留代码使用MOQ。基于读数,TypeMock看起来像一个很好的契合,因为我可以隔离对象并在遗留对象上调用方法时返回我们想要的东西。我真的非常喜欢简单和易于发展。我想知道有没有其他任何其他工具,在那里,我应该在为此提交之前看看,因为我必须支付它。
感谢
ps:我们的Microsoft Shop我们使用C#/ ASP / ASP.NET / Silverlight和VB.Net
**我刚发现Infragistics也有一个嘲弄工具。
解决方案
您正在寻找的是一种使用Profiler API的模拟框架。这些是可以“模拟任何东西”,因为它们有点运行“下面”被测试的代码。
在考虑其中一个时,您将想考虑以下内容:
- 集成支持:它是否与您使用的工具合作?例如,您的构建服务器,覆盖工具,单元测试工具等有任何其他工具(例如,Visual Studio插件)可能会帮助您使用它?
- 技术支持:如果出现问题,或者您在产品中找到一个错误,你能问一个人吗?
- 语法/模式:它是否支持AAA测试,或者只是记录/重放?开始使用的是多么容易?
- 社区和学习资源:文件怎么样?有人在那里可以回答你更普遍的使用问题,或者你自己是“你自己的?”
有三个主要的嘲弄框架需要考虑我知道的:
- typemock isolator - 最成熟的开源项目的免费许可,而不是自由。
- telerik justmock - 新的场景,但功能良好。 有一个免费/有限的版本。
- moles - 没有微软,虽然稍微易于易于与VSTS领域外面的工具集成。
完整披露:我是一个typemock mvp,我一直在使用隔离器一段时间。它到目前为止,它的重量在黄金中,特别是在布朗菲尔德开发中。我将在某些情况下承认,在那里更加绿地,我使用犀牛或Moq。它真的取决于我正在做的事情。
在任何情况下,我建议自己评估每个工具,以便在您的环境中看到哪种工作。一定要查看它是如何集成的,对每个人来说都有多么容易,然后根据您在您的环境中的经验进行决定。
不隶属于 StackOverflow