如何在一个文件中运行多个测试用例

时间:2016-02-28 17:06:58

标签: selenium-webdriver testng testng-eclipse

我又有一个棘手的问题,我希望你能再次找到解决方案。

目前我有2个testng.xml(testng1.xml和testng2.xml)

in testng1.xml
---------------
...
<suite name="Firefox Browser" verbose="1">
    <test name="FF">
        <parameter name="browserType" value="Firefox" />
        <classes>
            <class name="demo.Test01" />
            <class name="demo.Test02" />
         </classes>
    </test>    
</suite> 

in testng2.xml
---------------
...
<suite name="Chrome Browser" verbose="1">
    <test name="CH">
        <parameter name="browserType" value="Chrome" />
        <classes>
            <class name="demo.Test01" />
            <class name="demo.Test02" />
        </classes>
    </test>    
</suite> 

Okay,because of another issue (ATU report issue) I cannot combine these 2 testng files as 1 file (testng.xml) together, e.g.

testng.xml
----------
...
<suite name="Testsuite" verbose="1">
    <test name="FF">
        <parameter name="browserType" value="Firefox" />
        <classes>
            <class name="demo.Test01" />
            <class name="demo.Test02" />
        </classes>
    </test>    
    <test name="CH">
        <parameter name="browserType" value="Chrome" />
        <classes>
            <class name="demo.Test01" />
            <class name="demo.Test02" />
         </classes>
    </test>    
</suite> 

问题:我找到了一种如何定义xml文件的方法,例如: allTestng.xml 我可以在哪里运行testng1.xml和testng2.xml?

重要:testng1.xml应该在testng2.xml启动之前开始和结束。

2 个答案:

答案 0 :(得分:0)

您可以创建新的testng.xml文件,并可以使用preserver-order =&#39; true&#39;来调用这些套件testng.xml文件。按指定顺序执行。例如

 <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="My test suite" preserve-order="true">
<suite-files>
    <suite-file path="Testng1.xml"></suite-file>
    <suite-file path="Testng2.xml"></suite-file>
</suite-files>

以上testng.xml个文件调用Testng1.xml套件文件,然后Testng2.xml

我希望这就是你要找的......

答案 1 :(得分:0)

您也可以使用一个包含所有测试用例的testng.xml文件,其中的案例按以下顺序逐个运行。您决定将哪一个排除或包含在此类测试套件中。

  <suite name="Suite" parallel="none">
    <parameter name="properties" value="Test.properties" />
    <test name="Test checks xyz">
        <classes>

            <class name="testpackage.testClass" />
            <methods>
                <include name="firstTestMethod" /> 
                <exclude name="secondTestMethod" />
          </methods>
        </classes>
      </test>
    </suite>