使用不同的配置多次测试

时间:2018-09-19 07:43:00

标签: java junit

我想知道,是否可以多次运行同一测试但配置不同。

例如:测试名为“ A”,使用文件“ config1.json”中的config运行,完成后,使用文件“ config2.json”中的config运行相同的测试“ A”。

我可以使用config2.json中的config编写测试B,但是我不想重复我的代码。

在JUnit中可以吗?

1 个答案:

答案 0 :(得分:0)

JUnit 5

如果使用的是JUnit 5,则可以使用parametrized tests

@ParameterizedTest
@ValueSource(strings = {"config.json", "config2.json"})
public void testMyCode(final String configResource) {
    // ...
}

请注意,自2018年9月19日起,参数化测试是一项实验功能。 它们确实有效,但是API可能会在将来的JUnit版本中更改。

JUnit 4

使用JUnit 4,您需要编写一个测试方案方法,并使用与测试方法不同的参数来调用它:

@Test
public void testMyCode() {
    myTestScenario("config.json");
    myTestScenario("config2.json");
}

private void myTestScenario(final String configResource) {
    // ...
}