《手把手教你》系列基礎篇(七十九)-java+ selenium自動化測試-框架設計基礎-TestNG依賴測試-下篇(詳解教程)
阿新 • • 發佈:2022-03-22
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.小結
好了,今天時間也不是很早了,巨集哥就講解和分享到這裡,感謝您耐心的閱讀!