4

我的任务是找到进行集成单元测试的最佳方法。我们有一个非常大的 Java EE 5 应用程序(桌面)。现在我们使用一个名为QF-TEST的工具,它对于大型测试来说非常麻烦,并且在任何代码更改时都很难使用(容易破解)。

我们现在想做一些更标准的东西,让开发人员有更多的控制权。

我在这里读了几篇文章:

Java EE 环境中的单元测试

自动化测试- 有点酷,虽然对于 .Net

自动化测试的最佳实践方法

Java中最简单的自动化测试工具

从我读过的一般信息来看,JUnit/JUnitEE 可能是最好的(最好的意思是学习最快,可能是 JAVA 标准)。

JUnit 是否适合大型 Java EE 应用程序?还有哪些其他人觉得更好的选择(如果有的话)?

谢谢!

4

3 回答 3

3

这是一个非常广泛的问题。这是很多书的主题。从 JUnit 开始,开始阅读有关测试驱动设计/开发 (TDD) 的内容,然后从那里构建。当您遇到更具体的问题时,请提出更具体的问题。您可以从JUnit 站点上的一篇相当古老但仍然适用的文章“Test Infected”开始。

于 2011-09-28T01:06:18.570 回答
2

我认为对于 java,我会使用junittestNG框架,如果您在应用程序中涉及持久性/数据库,我会将dbUnit添加到组合中。

如果您有mavenantgradle 之类的构建脚本,我还建议您研究Jenkins和类似工具来自动化构建。

我建议使用 maven,因为它具有用于测试的生命周期事件,您可以使用 ant 添加目标,我没有使用过 gradle,但如果让我选择,我会选择 gradle

于 2011-09-28T00:25:24.810 回答
0

JUnit 不是用于大型 Java EE 应用程序的方法,它只是最低要求。

但是既然你已经有一个应用程序,编写 jUnit 测试对你没有帮助,因为 jUnit 不是一个测试工具。jUnit 用于 TDD 和重构安全性,事后才编写 jUnit 测试根本行不通。

也就是说,您应该尽快学习 jUnit4(它可以在 60 秒内完成),而不是学习 TDD(它可以在 2-3 小时内完成),并在以后对应用程序所做的每一次代码更改中使用 jUnit。

至于您已经拥有的代码,您需要的是“代码分析器”。这意味着将检查您的源代码是否违反编码标准、代码重复、进行代码覆盖、依赖性分析和复杂性监控的工具。(所有这些以及更多作为 eclipse 插件存在)

您可能还需要一些“java gui 测试”框架(以替换 QF-TEST) 那里有很多开源替代品,请在网上搜索。

于 2011-09-30T13:08:39.087 回答