1.1  測試用例的第一層(互動層)

1. 建立專案資源(Resource)。

操作步驟:

點”專案名稱”->右鍵,選New Resource,在彈窗Name 輸入框輸入資源名稱 mykeywork->新建專案資源。

2.給新建的專案資源匯入Selenium2Library庫。

3.建立自定義關鍵字(New User Keyword)。

操作步驟:

點”專案資源”->右鍵,選New User Keyword,在彈窗Name 輸入框輸入資源名稱 開啟瀏覽器->新建使用者關鍵字。

4.給新建的使用者關鍵字(開啟瀏覽器),新增操作步驟。

5.新建使用者自定義關鍵字(最大化瀏覽器)。

6. 新建使用者自定義關鍵字(輸入使用者名稱)。

7. 新建使用者自定義關鍵字(輸入密碼)。

8. 新建使用者自定義關鍵字(點選登入)。

這樣我們就把實現教育局招生系統的登入系統拆分成5個自定義的關鍵字。接著我們新建一個測試用例,通過自定義的關鍵寫教育局招生系統的登入步驟。

9.新建一個登入的New Suite->新建一個login用例->把自定義關鍵字資源(mykeywork)匯入進來。

10.用使用者自定義關鍵字的關鍵字寫登入步驟。

11.執行用使用者自定義關鍵字的關鍵字寫的測試用例,檢視測試結果。

有的時候,開啟瀏覽器或者登入的使用者名稱可以不一樣,那麼就需要我們去改程式,為了更加靈活,我們可以在新建自定義關鍵字(New User Keyword)的時候,把經常需要改變的值進行引數化。

調整一:

調整二:

調整三:

經過引數化之後,測試用例也是需要做相應的調整,如下:

上面整體的例子說明:我們不但要把操作步驟拆分離,而且還要做到資料和程式碼分離。

1.2  測試用例的第二層封裝(頁面層)

封裝的過程步驟如下:

1. 點”專案名稱”->右鍵,選New Resource,在彈窗Name 輸入框輸入資源名稱 page.txt->新建專案資源。

2.給新建的專案資源匯入Selenium2Library庫。

3.把互動層的關鍵字(mykeywork)資源匯入到page層中

4.建立page層關鍵字(點page.txt資源->右鍵->新建自定義關鍵字New User Keyword(登入頁面))。

5.對登入頁面關鍵字的資料進行引數化。

這樣我們就把page層登入頁面關鍵字封裝好了。

補充說明:整個專案的page層有很多頁面關鍵字,這裡只是舉例了登入一個關鍵字,其實每層都可以根據需要封裝不同的關鍵字的。

1.3  測試用例的第三層封裝(流程層)

封裝的過程步驟如下:

1. 點”專案名稱”->右鍵,選New Resource,在彈窗Name 輸入框輸入資源名稱 flow.txt->新建專案資源。

2.給新建的專案資源匯入Selenium2Library庫。

3.把互動層的關鍵字(mykeywork)資源匯入到流程層中

4.把頁面層的關鍵字(page)資源匯入到流程層中。

5.建流程層關鍵字(點flow.txt資源->右鍵->新建自定義關鍵字New User Keyword(登入流程))。

6.流程層關鍵字步驟封裝

7.流程層關鍵字資料引數化

到這裡,3層的關鍵字基本已經封裝好了,我們就可以寫測試用例了。

1.4  測試用例的編寫

過程步驟如下:

1.新建一個New Suite(測試套件)登入

2. 給登入(測試套件)匯入Selenium2Library庫

3. 把互動層的關鍵字(mykeywork)資源匯入到登入(測試套件)中

4.把流程層的關鍵字(flow)資源匯入到登入(測試套件)中。

5.新建測試用例(新建一個登入的New Suite->新建一個login用例)。

6.登入測試用例的實現。

程式碼實現:

執行結果:

7.測試用例的驗證。

專案例子一:(登入成功的驗證)

步驟:

1)在互動層的mykeywork.txt資源中新增一個使用者自定義關鍵字(檢查登入成功)

2)修改之前的測試用例,簡化用例。

專案例子二:(登入失敗的驗證)

步驟:

1)在互動層的mykeywork.txt資源中新增一個使用者自定義關鍵字(檢查失敗成功)

2)新建一個新的login2

7. project(專案)、Suite(模組)、Test case(測試用例)的Settings項設定。

project(專案)Suite模組(測試套件)、 Test case(測試用例)都有一個Settings項,下面對Settings項的各個欄位說明:

【Suite Setup】設定測試套件下所有的測試用例Setup項,假如在這裡設定了關鍵字,也就是每個測試用例開始的時候都呼叫這個關鍵字。

專案例子:每個用例的開始,預設開啟瀏覽器。

【Suite Teardown】設定測試套件下所有的測試用例Teardown項,假如在這裡設定了關鍵字,也就是每個測試用例結束的時候都呼叫這個關鍵字。

專案例子:有些用例可能沒有執行到最後,就失敗了,導致瀏覽器沒關閉,這樣我們就可以在這裡加一個關鍵字,假如用例執行失敗,關閉瀏覽器。

步驟:

1)在互動層的mykeywork.txt資源中新增一個使用者自定義關鍵字(測試失敗時候呼叫)

2)設定測試套件下所有的測試用例Teardown項

【Test Setup】設定單個的測試用例Setup項。

【Test Teardown】設定單個的測試用例Teardown項。

【Test Template】設定單個的測試用例模板,這個用的比較少。

【Test Timeout】設定單個的測試用例超時時間,每個步驟都超時設定的時間。

【Force Tags】

【Default Tags】

1.5  繼續封裝測試用例關鍵字

專案例子一:登入時候不需要關注是登入成功還得失敗,那就需要再封裝關鍵字

步驟:

1.在page層建立一個新的關鍵字(登入檢查)

2.編寫登入檢查關鍵字

3.建立一個新的用例login3。

程式碼實現:

執行結果:

備註:失敗的例子,就把Pass 改成Fail 就可以了。