gradle测试过滤对参数化适配器不起作用

时间:2018-02-20 19:55:07

标签: gradle junit filtering runner

gradle测试过滤对参数化适配器不起作用。如,

@RunWith(Parameterized.class)
public class FooTest {

    @Test
    public void testFoo() {
    }

}

为参数1运行一个测试方法:

gradle test --tests com.example.test.FooTest.testFoo[1]

作品。

但是对于封装在Parameterized.class上的跑步者适配器,它不起作用。

public class HelloAdapter extends Runner {

    private Runner wrapped;

    public HelloAdapter(Class testClass) {
        this.wrapped = new Parameterized(testClass);               
    }   

    @Override
    public void run(RunNotifier notifier) {
        wrapped.run(notifier);
    }

}


@RunWith(HelloAdapter.class)
public class FooTest {

    @Test
    public void testFoo() {
    }

}

为参数1运行一个方法:

gradle test --tests com.example.test.FooTest.testFoo[1]

[1]将被忽略。 Gradle将对所有参数[0],[1],[2],...

运行测试

HelloAdapter不能为Parameterized子类化,因为它可以是多个runners的适配器。

0 个答案:

没有答案