我是 Java 自动化测试的新手。我应该选择哪种工具? JUnit 还是 TestNG?

2024-01-05

我读过一些比较JUnit and TestNG看起来 TestNG 有更多的配置选项。另一方面,JUnit 更受 IDE、构建工具的支持,拥有更多的插件。

我没有编写单元测试的经验。我应该选择哪种工具?

附: 我认为我的问题更像是:我应该尝试 TestNG,还是像其他人一样坚持使用 JUnit?

附: 我们开发Web应用程序,所以我认为选择也应该考虑到我们稍后会使用Selenium进行功能测试。


TestNG 的编写是为了克服 JUnit 3 的一些明显限制。查看 Cedric 的博客文章 http://beust.com/weblog/2004/02/08/junit-pain/或其他文章测试NG站点 http://testng.org/doc/index.html来看看他的想法。

请注意,JUnit 3 的一些限制是按设计TestNG 故意允许您做 JUnit 设计者明确禁止的事情。

TestNG 相对于 JUnit 3 的最大优势是它允许您使用注释来定义测试,而不是强迫您扩展 JUnit 基类。 JUnit 4 现在也可以以同样的方式使用注释,缩小差距。

TestNG 和 JUnit 之间最大的区别是 TestNG 允许您的测试相互依赖,并允许您通过测试注释来表达这些依赖关系。相反,JUnit 强制所有测试相互独立。

当然,还有其他差异 – TestNG 默认为assertEquals(actual, expected, message)而 JUnit 是assertEquals(message, expected, actual)——但这是最大的。

我会说:选择一个,然后尝试一下。写一些测试。两者都可以与 Selenium 配合使用。两者都可以与 ant 配合使用。两者都可以与 CruiseControl 或 Hudson 配合使用。学习编写好的单元测试比学习一组特定的命令重要得多(无论如何它们非常相似)。

在我看来,TestNG 拥有更多的功能和更少的限制,但这当然也给了你更多出错的机会。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我是 Java 自动化测试的新手。我应该选择哪种工具? JUnit 还是 TestNG? 的相关文章

随机推荐