gpt4 book ai didi

java - 当测试类作为 'TestNG Test' 运行时,无法从 testng.xml 检索参数值

转载 作者:行者123 更新时间:2023-11-30 08:18:59 24 4
gpt4 key购买 nike

为了从 testng.xml 检索浏览器类型(我想在其上运行 Selenium 测试),我编写了如下代码 -

public class TestClass {

@BeforeClass
public void beforeClass(ITestContext context) {
String browser = context.getCurrentXmlTest().getParameter("browser");

if(browser.equals("firefox")){
driver = new FirefoxDriver();
}
.
.
.

以下是我的testng.xml -

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name="Task-Manager-Suite" verbose="10" >
<parameter name="browser" value="firefox" />
<test name="Test" >
<classes>
<class name="org.test.st.StackOverflowTest" />
</classes>
</test>
</suite>

当我运行 testng.xml 时,测试运行良好,并且 browser 已在 testng 中的 parameter 标记中设置了值.xml

但是当我通过右键单击另一个测试类文件并选择“运行方式”->“TestNG Test”打开另一个测试类文件时,browser 的值设置为 null 。它不会从 testng.xml

获取值

执行此操作后,我可以运行测试类文件,并且将从 testng.xml 中获取浏览器的值吗?

当我想检查我编写的测试时,每次我都必须转到 testng.xml 并使用我想要的文件名更新 class 标记运行。

这就是为什么我正在寻找一些可以避免每次我想检查我编写的测试时编辑 testng.xml 的东西。

请给我指出一些已处理此类问题的博客或 github 链接。

最佳答案

这是因为当您从测试类运行为 Run as > testng test 时,TestNg 将创建一个自定义 xml 文件,其中您定义的参数将不存在。因此,要在套件文件中获取参数,请选择套件文件并运行为 > TestNG Suite。

如果您坚持从测试类运行,请在 Eclipse 中的“项目”>“属性”>“模板 XML 文件”中将 Suite 文件设置为模板 XML 文件。

希望对你有帮助

关于java - 当测试类作为 'TestNG Test' 运行时,无法从 testng.xml 检索参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29234793/

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