UI自動化測試系列之-----TestNg中使用繼承

TestNg中可以使用繼承,一些公關的操作可以放在父類中,比如打開瀏覽器等可以放在@BeforeClass中,關閉則放在@AfterClass中。

 當子類實現了自己的@BeforeClass,@Test和@AfterClass,則運行子類時,對象直接調用自己的。如果有其中的任何一個子類沒有自己實現,父類進行了實現,則子類運行的時候會用自己的對象去調用父類的方法。


看下邊的例子:

1、子類和父類對這三個方法都進行了實現

父類代碼:

              

子類代碼:

             

結果:(子類調用自己實現的方法)

            

注:開始時,子類只運行了自己的三個方法,但是之後再運行就會運行父類的test方法,所以輸出了四行,到底應該是幾行?還不知道。。。

2、子類中有方法沒有實現,但是父類進行了實現,

      父類的代碼和上邊的一樣不進行改變,但是將子類中的@BeforeClass註解的方法註釋掉,

運行結果:

              

beforeClass是子類調用的父類中的方法。驗證可以得到,AfterClass和Test也是一樣的。

故:一些公共操作,可以統一在父類中封裝實現,然後子類只實現各自不同的方法。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章