如何在testng.xml文件中使用变量

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

我有以下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 -->```


selenium-webdriver testng
1个回答
0
投票

看到此,

<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>

根据您的要求,您可以使用套件级别标准或测试级别标准。您也可以在测试中覆盖套件级别的标准杆]

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