VS Code 和 TestNG:使用参数运行单独的测试

问题描述 投票:0回答:1

我刚刚发现 VS Code 通过 Test Runner for Java 插件支持 TestNG 测试。

通常我使用 mvn verify 运行所有测试,同时还传递一些参数(例如 -D)。我们有一个 TestNG.xml 文件,它定义了我们运行的套件,其中有参数。

当我尝试使用 Test Runner 插件在 VS Code 中运行单个测试时,测试失败,因为我们所有的测试都需要参数,这些参数通常由 TestNG xml 文件提供。

有没有办法在 VS Code 中运行单独的测试和/或将参数传递给单独的测试?

XML 示例:

<suite name="main-test-suite">
    <test name="A test">
    <parameter name="browser" value="firefox" />
    <parameter name="anotherRequiredParam" value="a value here" />
    <classes>
        <class name="com.app.SpecificTest" />
    </classes>
    </test>
</suite>

测试示例:

public class SpecificTest extends RootTest {
    @Test(priority=1, description="Some test")
    @Parameters({})
    public void runTest() {
        // Test code here
    }
}

根测试:

public abstract class RootTest {
    @BeforeClass
    @Parameters({"browser", "anotherRequiredParam"})
    public void setup(String browser, String anotherRequiredParam) {
        // Test setup here
    }
}

编辑:我能够通过 VS Code 工作区设置传递每个测试的参数,通过 VMArgs json 传递 -Dbrowser=firefox -DanotherRequiredParam=paramher。

我更愿意传递一个 XML 文件,但这只是一个临时解决方案,而不是实际的答案。

visual-studio-code testng visual-studio-test-runner
1个回答
0
投票

您是否最终弄清楚如何使用 VS Code 和 TestNG 编辑 testng.xml?我有类似的设置并遇到了完全相同的问题。

提前致谢!

© www.soinside.com 2019 - 2024. All rights reserved.