gpt4 book ai didi

java - 在 intellij 中运行参数化 junit 测试的单个场景

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:54:05 26 4
gpt4 key购买 nike

我有一个包含多个场景的参数化 junit 测试,并且需要能够仅运行一个场景。

我想在 IntelliJ 中完成。有谁知道怎么做吗?

这是一个代码示例:

这里是场景、参数和测试方法的集合:

@RunWith(Parameterized.class)
public class MyTest {

@Parameterized.Parameters(name = "{index}: {0}")
public static List<String[]> e2e_scenarios() {
return Arrays.asList(new String[][]{
{"scenario 1"},
{"scneario 2"},
});
}

@Parameterized.Parameter
public String scenarioName;

@Test
public void testrScenario() {
System.out.println("running scenario " + scenarioName);
}
}

我希望能够只运行一个场景。最好是从 IntelliJ GUI 或 Junit Runner 进行操作。

所有场景运行一次后,可以在“运行”窗口中右键单击其中一个场景并运行或调试它。这个解决方案并不理想,因为整个套件都需要先运行,然后才能只运行一个套件。

最佳答案

您可以通过将参数添加到运行/调试配置中方法名称的末尾来传递参数。 IntelliJ 会显示警告,但它会正确运行 JUnit 测试。适用于原始类型、字符串和枚举,不确定它如何适用于复杂对象。

示例:

@Parameterized.Parameters(name = "MyEnum: {0}")
public static setParameters() {
...
}

Method in the configuration: testDoSomething[MyEnum: VALUE1]

关于java - 在 intellij 中运行参数化 junit 测试的单个场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36770171/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com