首页 文章

用于.NET的自动单元测试Gen Tools

提问于
浏览
5

希望获得自动化测试工具(投票应该把好的工具带到顶部)

理想的工具将:

  • 消除了为方法提供一组值的需要 .

  • 采用交互式探索性测试等技术,其中检查代码以确定行使所有代码路径所需的值 . 即,方法的单元测试由代码的复杂性决定

例如,如果方法检查整数参数是123,则至少生成2个单元测试:一个是该参数为123,另一个是不是 .

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

  • TestGen4J

  • AgitarOne

从微软研究院听说过Pex - For .NET,但这是非商业许可证

谢谢

3 回答

  • 3

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

    它允许开发人员编写参数化单元测试 - 因此它完全符合测试优先开发风格 .

    对于商业软件,Pex需要MSDN许可证 . 更多信息,请致电http://research.microsoft.com/pex

    一个pex开发人员:)

  • 0

    我以任何有意义的方式猜测方法调用的语义 . 有一篇非常好的文章关于这个here - 非常值得一读 .

  • 2

    另一个自动生成单元测试的好工具是Randoop .

    Randoop适用于Java(http://mernst.github.io/randoop/)和.NET(https://github.com/abb-iss/Randoop.NET) .

    Randoop在包括Sun和IBM的JDK以及核心Microsoft .NET组件在内的广泛使用的库中发现了以前未知的错误 .

相关问题