我有以下xml文件,我想在其中创建变量并在所有测试标签中使用它们。在下面的xml文件中,属性标记是我尝试创建不起作用的变量的内容。我想在此testng.xml中创建两个变量env和浏览器,并在同一testng.xml中使用它们。以下是我的代码。
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="VW SRSTN-1152 suite">
<property name = "env" value = "qa">qa</property>
<property name = "browser" value = "firefox">firefox</property>
<listeners>
<listener
class-name="com.utility.CustomTestNGReporter" />
</listeners>
<test name="Test-1">
<parameter name = "environment" value="${env}"/>
<parameter name = "browser" value="${browser}"/>
<classes>
<class name="com.TC1"/>
<class name="com.TC2"/>
</classes>
</test> <!-- Test1 -->
<test name="Test-2">
<parameter name = "environment" value="${env}"/>
<parameter name = "browser" value="${browser}"/>
<classes>
<class name="com.TC1"/>
<class name="com.TC2"/>
</classes>
</test> <!-- Test2 -->
</suite> <!-- Suite -->```
看到此,
<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.myclass1Here"/>
</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.myclass2Here"/>
</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.myClass3Here"/>
</classes>
</test>
根据您的要求,您可以使用套件级别标准或测试级别标准。您也可以在测试中覆盖套件级别的标准杆]