【发布时间】:2018-03-15 13:32:16
【问题描述】:
我们正在使用我们的自定义测试运行器,它扩展了ParentRunner:
public class OurTestRunner extends ParentRunner<TestRunnerForOneConfigCase> {...}
class TestRunnerForOneConfigCase extends BlockJUnit4ClassRunner {...}
受how to combine @RunWith with @RunWith(Parameterized.class) 的启发,我想将OurTestRunner 与测试参数一起使用。所以我正在尝试实现工厂:
public class OurTestRunnerFactory implements ParametersRunnerFactory {
@Override
public org.junit.runner.Runner createRunnerForTestWithParameters(TestWithParameters test) throws InitializationError {
return new OurTestRunner(test /* but it takes Class<T> as parameter */);
}
}
但是,OurTestRunner 及其父类ParentRunner 仅将Class<T> 作为参数,而不是TestWithParameters(即它不使用参数)。
是否有与Parameterized 兼容的ParentRunner 版本?如果不是,那么扩展我们的设置(无需重写所有内容)的最简单方法是什么?
【问题讨论】:
标签: java unit-testing junit parameterized parameterized-unit-test