java - JUnit3 和 JUnit4 之间有性能差异吗?

标签 java performance junit junit4 junit3

我想知道运行 JUnit3-Test 或 JUnit4-Test 是否有区别。即使总运行时间只有 5-10% 的改进,在夜间构建的大型项目中,这也可能很重要。

子问题是:

  • TestRunner 是否在 Junit4 更新后得到改进?
  • 还是需要更长的时间来解析 JUnit4 风格的@annotation
  • 有利于 JUnit4 执行的 JUnit3 书面​​测试吗?

如果可能,请附上引用文献。

最佳答案

我怀疑考虑到 JUnit 的作用(主要是为人们编写测试提供框架),如果有的话,差异可以忽略不计。对于大多数性能问题和查询,您可能应该针对您的特定场景自行执行测量。

我过去看到的任何测试性能问题都与开发人员如何编写实际测试,以及他们是否处理以下问题有关:

  1. 提前为一组测试设置前提条件,而不是为每个单独的测试执行设置(例如,参见 @BeforeClass)
  2. 在模拟可能更可取的情况下执行对远程资源(服务器、数据库等)的访问
  3. 围绕线程问题编写测试,穿插 Thread.sleep() 以解决调度问题

如果您真的关心测试框架的速度,那么也许您还应该评估 TestNG

关于java - JUnit3 和 JUnit4 之间有性能差异吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11523271/

相关文章:

java - JUnit 出现初始化错误( eclipse 氧气)

java - 没有正文的 POST

performance - IndexedSeq.last 复杂度

java - TestNG:Eclipse 被 JUnit 搞糊涂了

unit-testing - 使用模拟类进行单元测试

performance - 大量插入和截断的 Oracle 性能问题(附加 AWR)

java - Spring Boot Maven webapp 文件夹和 ResourceHandler

java - 如何清除ListView选择?

java - 错误 java.lang.InstantiationException

javascript - Chrome 在高迭代次数上意外减速