2008-09-05 73 views
5

希望得到在自动化测试工具你拿(投票应该把好的顶端)自动化单元测试根工具.NET

理想的工具将:

  • 不需要在目前一个方法的值集 。
  • 采用一些技术,如交互式 探索性测试,其中代码 进行检查,以确定哪些值 需要行使所有代码 路径。即,对于一个方法的单元测试由代码

例如复杂确定的,如果一个方法检查一个整数参数为123,至少为2的单元测试中产生:一个如该参数为123和一个不是。

对于Java我的理解是这些都是一些选项,但也不是.NET

  • TestGen4J
  • AgitarOne

听说过的PEX - 对于来自微软研究院的.NET但是这有一个非 - 商业许可证

谢谢

回答

2

我已经尝试了其他语言的一些工具和恕我直言,他们几乎完全浪费时间。原因?他们无法以任何有意义的方式猜测方法调用的语义。关于这个here有一篇很好的文章 - 非常值得一读。

+0

单元测试描述软件的行为,因此不能生成 – 2010-10-11 09:49:12

3

Pex启用参数化单元测试并使用动态符号执行(某种自动探索性测试)来生成输入。 Pex可以理解MSIL的语义,即任何托管方法调用的语义。在'123'的例子中,Pex会找到两个测试。

它可以让开发人员编写参数化的单元测试 - 因此它完全符合测试优先开发风格。

对于商业软件,Pex需要MSDN许可证。在http://research.microsoft.com/pex

一个PEX开发商:)