你可以通過以下幾種不同的方法觸發TestNG:
- 用一個testng.xml檔案
- 使用ant
- 從指令行觸發
這個章節将會介紹testng.xml的格式(你也可以在下面找到關于ant和指令行的内容)。
關于testng.xml目前版本的DTD檔案可以在這個網站找到:testng-1.0.dtd
這有一個testng.xml檔案的示例:
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite1" verbose="1" >
<test name="Nopackage" >
<classes>
<class name="NoPackageTest" />
</classes>
</test>
<test name="Regression1">
<classes>
<class name="test.sample.ParameterSample"/>
<class name="test.sample.ParameterTest"/>
</classes>
</test>
</suite>
你也可以通過設定包名來定義xml檔案:
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite1" verbose="1" >
<test name="Regression1" >
<packages>
<package name="test.sample" />
</packages>
</test>
</suite>
在這個例子中,TestNG将會在test.sample包中尋找所有的類,然後将含有TestNG注解的類保留下來執行。
你也可以具體包含或者排除某些組和方法:
<test name="Regression1">
<groups>
<run>
<exclude name="brokenTests" />
<include name="checkinTests" />
</run>
</groups>
<classes>
<class name="test.IndividualMethodsTest">
<methods>
<include name="testMethod" />
</methods>
</class>
</classes>
</test>
你也可以在一個testng.xml檔案中定義一些新的組并添加屬性,比如是否并行運作測試,需要多少個線程,是否運作JUnit測試等等。
預設情況下,TestNG将會按照XML中放置的順序運作測試用例,如果你想以随機的順序運作檔案中的類和方法,需要将preserve-order屬性設定為false。
<test name="Regression1" preserve-order="false">
<classes>
<class name="test.Test1">
<methods>
<include name="m1" />
<include name="m2" />
</methods>
</class>
<class name="test.Test2" />
</classes>
</test>
請通過查詢DTD檔案來檢視完整的特性。
轉載于:https://www.cnblogs.com/suntingme/p/6484147.html