1. 程式人生 > 其它 >《手把手教你》系列基礎篇(七十九)-java+ selenium自動化測試-框架設計基礎-TestNG依賴測試-下篇(詳解教程)

《手把手教你》系列基礎篇(七十九)-java+ selenium自動化測試-框架設計基礎-TestNG依賴測試-下篇(詳解教程)

1.簡介

今天本來是打算實踐應用一下前邊的知識點,但是忘記漏了依賴的一個知識點,巨集哥個人覺得還是比較重要的,所以今天先說這個,下一篇再講解和分享實際應用。今天主要講解一下依賴測試的依賴機制。

2.依賴機制

TestNG提供了兩種依賴機制:

1.強依賴關係:所有的被依賴的方法必須被成功執行,才會執行到後續的方法。哪怕只有一個前置方法執行失敗了,有依賴關係的後置方法都會被跳過。既有先後順序關係,也有決定關係。

2.弱依賴關係:不論前置方法是否成功執行,有依賴的後置方法都會得到執行,他們之間僅僅有前後順序關係,前者的成功與否並不決定後者是否執行。

3.強依賴關係

3.1程式碼設計

3.2參考程式碼

package library;

import org.testng.annotations.Test;

/**
 * @author 北京-巨集哥
 * 
 * @公眾號:北京巨集哥
 * 
 * 《手把手教你》系列基礎篇(七十七)-java+ selenium自動化測試-框架設計基礎-TestNG依賴測試(詳解教程)
 *
 * 2022年3月05日
 */

public class TestDepend {
    
    @Test
    public void failMethod(){
        
        System.out.println("這個方法執行失敗");
        
throw new RuntimeException(); } @Test(dependsOnMethods = {"failMethod"}) public void skipMethod1(){ System.out.println("這個方法永遠不會執行,所以不會有輸出"); } @Test(dependsOnMethods = {"skipMethod1"}) public void skipMethod2(){ System.out.println("這種依賴連帶的我也不會被執行"); } }

3.3執行程式碼

1.執行程式碼,右鍵Run AS->TestNG Suite,控制檯輸出,如下圖所示:

強制依賴情況:前置依賴失敗,導致後邊這些依賴方法都被跳過了

2.上邊這個也許看的不清晰,巨集哥給你們看看這個比較清晰,如下圖所示:

4.弱依賴關係

4.1程式碼設計

4.2參考程式碼

package library;

import org.testng.annotations.Test;

/**
 * @author 北京-巨集哥
 * 
 * @公眾號:北京巨集哥
 * 
 * 《手把手教你》系列基礎篇(七十七)-java+ selenium自動化測試-框架設計基礎-TestNG依賴測試(詳解教程)
 *
 * 2022年3月05日
 */

public class TestDepend {
    
    @Test
    public void failMethod(){
        
        System.out.println("這個方法執行失敗");
        throw new RuntimeException();

    }
    
    @Test(dependsOnMethods = {"failMethod"}, alwaysRun=true)
    public void skipMethod1(){
        System.out.println("經管failMethod執行失敗了,但是我是弱依賴,所以我會繼續執行");
    }
    
    @Test(dependsOnMethods = {"failMethod"})
    public void skipMethod2(){
        System.out.println("我是強依賴,failMethod失敗了,我不能執行");
    }
  
}

4.3執行程式碼

1.執行程式碼,右鍵Run AS->TestNG Suite,控制檯輸出,如下圖所示:

2.上邊這個也許看的不清晰,巨集哥給你們看看這個比較清晰,如下圖所示:

5.小結

 好了,今天時間也不是很早了,巨集哥就講解和分享到這裡,感謝您耐心的閱讀!