TestNG測試執行順序

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

例如:ui

<?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的順序執行spa

2.那麼要控制方法的執行順序,能夠採起如下方式:code

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

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

}

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

}

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

}

這樣指定之後,將按照test00一、test00二、test003順序執行。

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

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

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

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

<?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的順序執行 class

相關文章
相關標籤/搜索