工具應用:利用SoupUI實現協議級介面測試
實驗簡介
SoapUI是一個開源測試工具,通過SOAP/HTTP來檢查、調用、實現WebService的功能/負載/符合性測試。提供GUI界面完成測試。其本質也是調用WS介面進行操作,並提供斷言功能。
實驗目的
能夠使用SoapUI提供的核心功能,並完成針對WebService和Http協議的介面測試。
實驗流程
- 新建一個SOAP項目
2. 輸入WSDL文件路徑
3. 調用WS介面
(1)在對應的被調用介面名稱下的默認請求Request 1處雙擊,打開請求和響應子窗口。
(2)在請求窗口中,輸入對應的參數值。
(3)點擊綠色三角形,將此請求連同參數發送出去。
(4)查看對應的右邊窗口的響應內容。
4. 添加測試用例
保持其它的默認設置和默認選項即可。
5. 簡單運行測試用例
(1)在創建好的Test Suite下的Test Case 1處雙擊,打開測試用例執行對話框。
(2)點擊運行測試用例。
(3)查看運行結果,如果所有的斷言都是成功,則用例執行成功。(類似於JUnit的結果)。
6. 手工添加斷言
默認情況下,SoapUI會為每一個默認的測試用例添加一個標準的斷言,該斷言只判斷請求是否發送成功,響應的狀態是否正確。顯然,這樣的斷言是無法滿足業務需要的,所以我們應該手工添加斷言。
(1)雙擊TestCase 1下的介面方法名稱,打開測試窗口。
(2)打開「Add Assertion」對話框。
SoapUI內置了較多斷言,我們選擇自己需要的即可。通常情況下,如果判斷的是響應的內容,我們只需要選擇「Contains」斷言即可,如圖。
(3)輸入斷言的內容。
7. 再次執行測試
我們可以設置錯誤的斷言,以確定斷言的確是生效的。
8. 循環執行
在Test Case的編輯執行窗口,我們可以勾選「Loop TestCase continuously」選項,這樣可以讓該請求一直發送(這是一種單線程,多次循環的運行方式),與我們在Java代碼中執行For循環是一樣的。
9. 進行負載測試
除了正常的功能性測試外,我們還可以在SoapUI中利用多線程方式執行負載測試。只需要在TestCase下面,新建一個Load Test,並設置好相應的線程數,暫停時間,運行總時間等參數即可。
10.測試HTTP協議介面
如果我們需要測試標準的HTTP協議,則可以直接在一個測試用例或者測試步驟中點擊右鍵「Add Step」菜單下選擇子菜單「HTTP Request」,即可完成對一個HTTP協議請求的添加和斷言。
當完成請求的處理後,我們便可以對其進行測試,正常添加斷言,正常設置選項即可:
思考練習
(1)SoapUI工具的用法還有很多,但是基本原理都是一樣的,請讀者朋友自行學習。
(2)使用SoapUI還是使用純Java代碼完成測試更高效,試說明理由。
(3)自學使用網頁解析工具JSoup或HtmlUnit,並闡述其工作原理與應用。
注:學習更多技術,觀看更多免費視頻,歡迎進入蝸牛學院官網 www.woniuxy.com
希望繼續在IT行業突破提升自己的各位朋友,歡迎加群384053806,不管你自我感覺牛不牛B。
推薦閱讀: