手把手教你接口自動化測試 – SoapUI & Groovy

關鍵詞:SoapUI接口測試,接口自動化測試,數據驅動測試,SoapUI進階使用, Groovy in SoapUI, SoapUI中Groovy的使用,數據分離。html

 

閱讀這篇文章須要必定的SoapUI基礎,至少入過門,另外還須要一些Groovy的知識,固然若是你會java 也能夠,這裏用到的Groovy知識和Java很相似。java

另外,本文的思路和我上一篇文章<零成本實現接口自動化測試 – Java+TestNG 測試Restful service>很類似,只不過把Java+TestNG的組合換成了SoapUI+Groovy, 另外測試對象也換成了基於Soap的web service, 依舊用Excel來管理數據,作到數據分離。web

因爲我用到的SoapUI是免費版本,相比Pro版,少不少的功能,像DataLoop之類的,因此只能經過Groovy寫一些腳原本作數據驅動的測試。數組

 

首先打開SoapUI, 新建一個Workspace 名爲Demooop

 

 

而後點擊File->New soapUI Project測試

 

而後輸入你的Project Name, WSDL 地址 點擊OKui

 

 

輸入服務的用戶名密碼 點擊OKspa

 

項目工程建好了3d

 

右擊ServicePort 創建TestSuitecode

 

以其中一個接口爲例 來生成用例

 

輸入TestSuite name 而後確認

工程結構以下

 

 

經過右擊TestCase -> Add Step  增長 Groovy Script 和 Properties

 

增長四個Groovy Script, 而且命名成 Start, Process, Check Response, End

增長5個 Properties, 而且命名成Input, Baseline, Output, Result, fieldResult

調整它們的順序,最後造成下圖的工程目錄結構

 

 

Start腳本主要建立log文件

 View Script - Start

 

Process腳本是整個工程的核心,讀取Excel數據文件的Input, Baseline 放入二維數組,而後循環讀入Input和Baseline這兩個Properties, 調用request, 取到Ouput和Result Properties的值放入Output, Result數組,最後更新Excel的Output, Result, Comparison sheet。

 View Script - Process

 

Check Response 顧名思義,用來檢查返回結果, 經過XmlHolder getNodeValue 來取response各節點的值,而且填入Output Properties已做對比之用。

 View Script - Check Response

 

End腳本 在log上打時間戳

 View Script - End

 

配置

雙擊DemoProject, 點擊下方的Properties tab

而後 Add property

Add 以下圖所示的5個Property

 

雙擊項目工程列表裏的'Demo TestCase'

點擊Properties tab

Add Property 如圖

 

Value 填Excel 的路徑

 

Excel數據工做簿裏的Input sheet 如圖

 

接下來須要把Input裏的column name 與 Soap request裏的input 字段映射起來

雙擊Test Steps 裏的request

將xml文件裏的?用參數來代替

左下角的TestRequest Properties  要填上用戶名 密碼

 

Baseline sheet裏要把輸出結果的字段名都定義好, 由於是根據字段名去response裏取結果的

每條用例指望結果都寫好,用做和實際結果對比

 

另外Check Response裏的腳本須要設置一下

假設你的response xml文件結構以下

若是你須要檢查Soap body標籤下的內容, 則你須要配置一下Check Response的腳本

將xml namespace的路徑配置一下

 

右擊Project  Save一下Project 

最後能夠運行了 雙擊Demo TestSuite  點擊Run

 

打開Workbook 數據工做簿查看結果

Output

Result

Comparison

 

是否是跟我上一篇文章殊途同歸?

 

 

注:轉載需註明出處及做者名,嚴禁惡意轉載,尊重原做者的勞動成果

http://www.cnblogs.com/wade-xu/p/4236295.html

相關文章
相關標籤/搜索