您可以通过几种不同的方式调用TestNG:
- 使用testng.xml文件
- 用蚂蚁
- 从命令行
本节介绍testng.xml的格式(您将在下面找到有关ant和命令行的文档)。
testng.xml的当前DTD 可以在主网站上找到: testng-1.0.dtd (为方便起见,您可能更喜欢浏览 HTML版本)。
这是一个示例testng.xml文件:
1 <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > 2 3 <suite name="Suite1" verbose="1" > 4 <test name="Nopackage" > 5 <classes> 6 <class name="NoPackageTest" /> 7 </classes> 8 </test> 9 10 <test name="Regression1"> 11 <classes> 12 <class name="test.sample.ParameterSample"/> 13 <class name="test.sample.ParameterTest"/> 14 </classes> 15 </test> 16 </suite>
您可以指定包名而不是类名:
1 <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > 2 3 <suite name="Suite1" verbose="1" > 4 <test name="Regression1" > 5 <packages> 6 <package name="test.sample" /> 7 </packages> 8 </test> 9 </suite>
在此示例中,TestNG将查看包test.sample中的所有类, 并仅保留具有TestNG注释的类。
您还可以指定要包含和排除的组和方法:
1 <test name="Regression1"> 2 <groups> 3 <run> 4 <exclude name="brokenTests" /> 5 <include name="checkinTests" /> 6 </run> 7 </groups> 8 9 <classes> 10 <class name="test.IndividualMethodsTest"> 11 <methods> 12 <include name="testMethod" /> 13 </methods> 14 </class> 15 </classes> 16 </test>
您还可以在testng.xml中定义新组,并在属性中指定其他详细信息,例如是否并行运行测试,使用多少线程,是否运行JUnit测试等等...
默认情况下,TestNG将按照在XML文件中找到的顺序运行测试。如果希望此文件中列出的类和方法以不可预测的顺序运行,请将preserve-order 属性设置为false
1 <test name="Regression1" preserve-order="false"> 2 <classes> 3 4 <class name="test.Test1"> 5 <methods> 6 <include name="m1" /> 7 <include name="m2" /> 8 </methods> 9 </class> 10 11 <class name="test.Test2" /> 12 13 </classes> 14 </test>
请参阅DTD以获取功能的完整列表,或继续阅读。