如何在 Maven 中以特定顺序运行 Junit 测试类而不创建套装?

Sam*_*ikh 1 junit maven

有没有更快的方法来在不创建套装的情况下在 Maven 中订购测试类的执行?

Mic*_*mlk 6

为了对类中的方法进行排序,Junit 带有FixMethodOrder注释。但是,我不得不警告不要做这样的事情。单元测试应该是独立的,并且不需要前一个测试的状态才能工作。

然而,类顺序需要一个套件,但这也是基于注释的,所以非常小。

@RunWith(Suite.class)
@Suite.SuiteClasses({TestA.class, TestB.class})
public class TestSuite {
}

@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class TestA {
    @Test
    public void testA1() {
        System.out.println("testA1");
    }

    @Test
    public void testA2() {
        System.out.println("testA2");
    }
}

@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class TestB {
    @Test
    public void testB1() {
        System.out.println("testB1");
    }

    @Test
    public void testB2() {
        System.out.println("testB2");
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 我不想对方法执行重新排序,我只想定义选取测试类的顺序。 (2认同)