java - 有没有办法在 TestNG 中设置全局参数?
问题描述
我目前正在使用 Selenium WebDriver 框架和 TestNG 来自动化 Web 应用程序。我想为 testing.xml 文件中的每个测试类提供参数,但是在 Web 资源上,我只看到了一些预定义某些参数以用于单个类的方法,例如:
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Parameterization Test Suite">
<test name="Testing Parameterization">
<parameter name="browser" value="Firefox"/>
<parameter name="username" value="testuser"/>
<parameter name="password" value="testpassword"/>
<classes>
<class name="com.parameterization.TestParameters" />
</classes>
</test>
</suite>
其中类名清楚地说明了只有一个 TestParameters 类。
有没有办法将一些参数设置为全局参数?那么我们可以在项目中的任何测试类中使用它们吗?
解决方案
我不确定我是否理解您的问题,但您可以在套件级别(示例中的每个测试suite-param
)或测试级别定义参数:
<suite name="Parameter test Suite" verbose="1">
<!-- This parameter will be passed to every test in this suite -->
<parameter name="suite-param" value="suite level parameter" />
<test name="Parameter Test one">
<classes>
<class name="com.howtodoinjava.test.ParameterTest">
<methods>
<include name="prameterTestOne" />
</methods>
</class>
</classes>
</test>
<test name="Parameter Test two">
<!-- This parameter will be passed this test only -->
<parameter name="test-two-param" value="Test two parameter" />
<classes>
<class name="com.howtodoinjava.test.ParameterTest">
<methods>
<include name="prameterTestTwo" />
</methods>
</class>
</classes>
</test>
<test name="Parameter Test three">
<!-- Overriding suite level parameter -->
<parameter name="suite-param" value="overiding suite parameter" />
<!-- Test specific parameter -->
<parameter name="test-three-param" value="test three parameter" />
<classes>
<class name="com.howtodoinjava.test.ParameterTest">
<methods>
<include name="prameterTestThree" />
</methods>
</class>
</classes>
</test>
</suite>
推荐阅读
- python - 合并多个具有不同索引的系列,对重复的索引求和
- javascript - 如何使用 Spotify API 验证本地主机?
- r - 删除所有指定字段包含相同字符串值的行
- c - “#define BUF 8”与“#define BUF (8)
- android - 改变另一个片段的片段(列表)
- mysql - PHP Select Query 用于比较来自不同 mysql 表的 2 个值(如果它们匹配)
- java - Java Swing:GUI 未更新某些属性
- excel - Excel 匹配,索引 VLOOKUP 多个条件
- html - Material Ui-pickers:在输入焦点和通过日历装饰打开日历
- r - 如果在 R 中缺少观察结果