enabled和priority屬性

本篇來繼續學習@Test下的註釋,這篇學習兩個屬性的基本使用。第一個是設置該條用例不被執行,第二個的做用是設置用例執行的優先順序。java

1. 屬性enabled單元測試

       在Testng中,若是方法前面添加了@Test註釋,而後沒有其餘的屬性,那麼默認這個用例會被自動運行。那麼若是,我不想要某個方法運行呢?有些人第一反應就是,把這個方法前面的@Test給刪除或者註釋符號註銷該行。不能否認,這是一個方法,可是不明智。在@Test註釋中提供了一個enabled的屬性,讓咱們臨時去修改該條用例不被執行。Enable屬性有兩個值true和false。學習

場景舉例:測試

       在單元測試,或者接口測試中。咱們通常一個類文件,會寫好幾個測試用例來測試這個方法或者這個接口。有時候,咱們須要debug,不想要其中一個或者幾個用例執行,那麼enabled就派上用場。例如,下面我不想讓test2用例執行。spa

 1 package com.java.learn;
 2  
 3 import org.testng.annotations.Test;
 4  
 5 /**
 6  * create by Anthony on 2017/10/31
 7  */
 8 public class TestNG_Demo2 {
 9  
10     @Test
11     public void test1(){
12         System.out.println("test1");
13     }
14  
15     @Test(enabled=false)
16     public void test2(){
17         System.out.println("test2");
18     }
19  
20     @Test
21     public void test3(){
22         System.out.println("test3");
23     }
24  
25     @Test
26     public void test4(){
27         System.out.println("test3");
28     }
29 }

 

運行結果顯示確實test2沒有被執行。這種應用,通常在寫測試用例,查找問題,區分干擾項的時候,常常用到。.net

2. 屬性prioritydebug

       上面介紹了disabled一些用例執行。有時候,咱們更但願,一個類文件下的測試用例按照咱們設想的順序去執行,而不是默認按照方法名的字母排序去執行。@Test註釋中有一個屬性,叫priority支持設置用例的優先級。若是不帶這個屬性,默認priority是等於0,並且priority值越小,優先級越高。來看看下面的舉例。code

package com.java.learn;
 
import org.testng.annotations.Test;
 
/**
 * create by Anthony on 2017/10/31
 */
public class TestNG_Demo2 {
 
    @Test(priority = 2)
    public void test1(){
        System.out.println("test1");
    }
 
    @Test(priority = 4)
    public void test2(){
        System.out.println("test2");
    }
 
    @Test(priority = 1)
    public void test3(){
        System.out.println("test3");
    }
 
    @Test
    public void test4(){
        System.out.println("test4");
    }
}

 


上面四個測試用例,我設置的優先順序是test4->test3->test1->test2,運行一下,看看是否是這個效果。blog

 


關於enabled和priority屬性的基本使用方法就介紹到這裏,實際應用中proority用到比較多。
---------------------
做者:Anthony_tester
來源:CSDN
原文:https://blog.csdn.net/u011541946/article/details/78483775
版權聲明:本文爲博主原創文章,轉載請附上博文連接!排序

相關文章
相關標籤/搜索