我知道这是一个主观的问题...

打字机为每位开发人员$ 799。 5个开发人员的许可证可获得很大的收益。如果这里有人使用了打字机,并且鉴于有开源嘲笑框架,那值得吗?为什么?

有帮助吗?

解决方案

在我们的项目中,我们必须每年升级12个打字许可证,但我相信我们花费的每一分钱都值得。

为什么? Typemock隔离器具有一个重要的优势:它没有设置(几乎)您需要模拟的代码的任何约束。私人建筑商?密封课?静态课?没问题 - 您可以使用Typemock隔离所有这些东西。

只是一个示例:您需要测试使用某些属性处理SQLEXception的代码,您该如何执行? Sqlexception是具有非公共构造函数的密封类。您可以提供各种解决方法,但是只要您使用托管代码,就没有直接的嘲笑Sqlexception的方法。

Typemock隔离器将您的代码作为探查器拦截,它不受管理,因此可以打开更强大的模拟。而且,如果您正在处理某些产品(例如SharePoint),那么隔离器是唯一可以处理它的框架,因为正如某人所说,SharePoint只是一堆私人密封类。

话虽如此,由于其功能,打字机隔离器需要开发人员更多地关心自己代码的可检验性。使用隔离器更容易编写非测试代码,并且仍然设法使用隔离器进行测试(我知道听起来很矛盾)。但是,假设您正确地拥有自己的代码,那么Typemock隔离器是伪造第三方组件的宝贵工具,当我说“第三方”时,我的意思是来自Microsoft的内容,这并不总是可以很容易地测试。

其他提示

主观部分是您对使用Typemock的时间(因此,金钱)的分析将为您节省。从开发人员小时的费用开始可能会有所帮助。 $ 100?在这种情况下,打字机可以节省8个小时的时间才需要多长时间?

做出明智决定的唯一方法是获得评估许可证并进行一些实际的测试,以查看它节省了多少时间。

让我序言,我可以在工作中定期使用Typemock,我认为这是一个很棒的产品,因为它可以帮助您使用漂亮的API测试许多无法测试的代码。

话虽这么说,您可能想退后一步,问自己是否正在编写良好的面向对象的代码并遵循良好的实践,或者他们是否只是在编写确实需要重型工具和专业知识的邪恶代码(请参阅 http://googletesting.blogspot.com/2008/07/how-to-write-3v1l-untestable-code.html 有关邪恶代码的更多信息)。

我将非常高兴的是,我们的代码已经进化(即被重构)到我们不需要诸如Typemock隔离器之类的工具来正确测试的工具。

这可能不像您想要的那样客观的答案,就像我在那里工作一样,但这是我一直在研究的检查清单。

这是您在评估当前任何一个隔离框架时可能要问自己的问题的列表:http://site.typemock.com/isolation-framework-checklist

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top