TestNG測試執行順序


1.preserve-order屬性,之前一直認為preserve-order屬性是控制配置方法的執行順序的,其實不是,preserve-order主要是控制test下節點classes執行順序的

例如:

<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">  
<suite name="framework_testng">  
    <test name="test" preserve-order="true">    
        <classes>  
            <class name="com.demo.One"></class>
            <class name="com.demo.Two"></class>
            <class name="com.demo.Three"></class>  
        </classes>  
    </test>  
</suite>          

以上將按照 類One Two Three的順序執行

2.那么要控制方法的執行順序,可以采取以下方式:

(1).使用priority控制,例如:

@Test(priority = 0)
public void test001() {

}

@Test(priority = 1)
public void test002() {

}

@Test(priority = 2)
public void test003() {

}

這樣指定以后,將按照test001、test002、test003順序執行。

(2).使用方法命名控制

執行順序是按照方法名的字典序升序排序執行的,例如方法名命名為:A()  B()  C()

這樣就會按照A B C的順序進行執行

(3).通過include控制,例如:

<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">  
<suite name="framework_testng">  
    <test name="test" preserve-order="true">   
        <classes>  
            <class name="com.demo.Yltest">
            	<methods >
			<include name="z" />
			<include name="c" />
			<include name="d" />
			<include name="e" />
			<include name="f" />
			<include name="g" />
			<include name="h" />
		</methods>
            </class>
        </classes>  
    </test>  
</suite> 

這樣將按照 z c d e f g h的順序執行 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM