1

我正在为我正在开发的一个类编写单元测试。另一位开发人员正在为他正在开发的方法开发同一类的其他测试。所以我们的测试发现自己在同一个 JUnit 测试类中。

所以我想做的是建立一个测试套件来运行我的测试,而我正在开发作为一种临时措施。我为我的测试创建了一个类别并将它们标记为这样。然后我创建了一个类作为我的测试套件。我告诉它包括属于这个类别的测试。当我运行它时,它仍然运行一切。有很多测试,所以用@Ignore 标记所有我不想运行的测试会很乏味。有没有办法说只运行一个类别中的测试而不运行其他测试?

4

2 回答 2

0

我认为您可以实现自己的“org.junit.runner.RunWith”,然后注释您的测试类以根据需要使用它。

    @RunWith(MyRunnerClass.class)

注意:这里正确的解决方案是在上面关于代码分支等的注释中。

于 2013-02-07T16:05:52.867 回答
0

您可以编写一个包装器测试类,该方法调用主测试类(仅您的方法),然后在包装器类上运行 Junit 测试。

public class MainTestClass {
    @Test
    public void yourFirstTest() {
    ...
    }

    @Test
    public void yourSecondTest() {
    ...
    }

    @Test
    public void otherFirstTest() {
    ...
    }
}

public class WrapperTestClass {
    @Test
    public void yourFirstTest() {
       new MainTestClass().yourFirstTest();
    }

    @Test
    public void yourSecondTest() {
       new MainTestClass().yourSecondTest();
    }
}
于 2013-02-07T16:06:39.193 回答