JUnit会并行运行测试吗?

时间:2012-09-20 19:18:53

标签: java unit-testing testing junit

我正在编写JUnit测试。我想知道测试类中的测试是否可以并行运行。

class TestMyClass {

    @Test
    public void test1() {
    }

    @Test
    public void test2() {
    }

}

Junit会不会同时运行测试1()和test2()?

4 个答案:

答案 0 :(得分:4)

如果您正在寻找TestNG,请考虑Parallel tests execution

答案 1 :(得分:1)

是的,你可以。请查看this question,了解有关如何进行设置的详细信息。尽管如此,测试的正确性不应该是真正的这种行为。如果它们同时运行,你的测试应该正确运行。

答案 2 :(得分:1)

我无法直接回答jUnit是否会并行运行它们,但从理论上说这无关紧要。你唯一应该记住的是你可以下注的执行顺序,比如

  • 设置
  • 执行测试
  • 拆卸

这应该足够了,因为每个单独的测试应该完全相互独立。如果您的测试取决于它们执行的顺序或它们是否并行运行,那么您可能会有一些错误的依赖项。

答案 3 :(得分:0)

不,因为在每次测试之前都会设置一个灯具。并行运行测试可以改变夹具状态。我想你可以写一个测试执行器来并行运行测试。