Maven surefire - 在测试之间建立依赖关系

时间:2014-05-08 17:40:22

标签: java unit-testing maven junit maven-surefire-plugin

我有一个包含2种方法的测试类。这些被maven同时称为,所以:

  1. 启动testA
  2. 启动testB
  3. 结束testB
  4. 结束testA
  5. 这不是一个问题(我喜欢并发的东西),但目前我需要以某种方式保证这些测试被调用。因此,我想在testA准备就绪后才启动testB。

    我正在考虑一些像这些测试方法之间的依赖关系。这有可能吗?

2 个答案:

答案 0 :(得分:2)

我不认为只使用surefire插件有一种简单的方法可以做到这一点。正如另一个答案所示,您可以通过多种技术来实现这一目标。

无论如何,这是 糟糕 的做法。单元测试应该是独立的。如果您对它们有真正的依赖关系,则应将它们组合到一个测试中。即使你能按照你想要的方式工作,你也会违背标准做法,这会使其他人感到困惑,并使你的设置难以理解和维护。

答案 1 :(得分:1)

JUnit有一个注释@FixMethodOrder,用于按声明顺序或按字母顺序执行给定类中的测试方法。

Surefire有一个属性runOrder来按给定的顺序启动测试类,例如按字母顺序。

相关问题