一、priority 注解(优先级第一)
testng提供了丰富的注解功能,priority标示用例执行的优先级,默认值为0,值越大优先级越低。比如:
@Test(priority=1)
@Test(priority=2)
@Test(priority=3)
@Test(priority=4)
二、testng.xml
pom文件中在maven-surefire-plugin插件增加配置如下:
<configuration> <suiteXmlFiles> <suiteXmlFile>testng.xml</suiteXmlFile> </suiteXmlFiles> </configuration> |
testng.xml作为testng的灵魂,提供了很强大的配置功能,其它使用方式可以自己百度。本问只讨论类型的执行顺序问题。tesng.xml配置如下:
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite1" > <test name="Nopackage"> <classes> <class name="com.ciphergateway.testcase.user" /> <class name="com.ciphergateway.testcase.user.FirstTest" /> <class name="com.ciphergateway.testcase.user.ThirdTest" /> </classes> </test> </suite> |
执行mvn test 结果如下:
User
first test
third test
从结果可以看出,默认是按照顺序执行。其实在suite和test标签分别有preserve-order控制各自子标签的执行顺序,该值默认true。
---------------------------------------------------------------------------------------------
如果我们把该值设置为false,可以看到用例不再按照配置的顺序执行了。
first test
User
third test