SoupUI詳細教程(七)【樂搏TestPRO】

上一期我們講解了SoupUI的概念及下載安裝是使用,請參考:

SoupUI詳細教程(一)
SoupUI詳細教程(二)
SoupUI詳細教程(三)
SoupUI詳細教程(四)
SoupUI詳細教程(五)
SoupUI詳細教程(六)
今天將要講解下如何測試結構的組織和執行。

一、測試結構的組織和執行

SoapUI 將功能測試用例組織爲三層結構:測試集—測試用例—測試步驟。

1、一個測試集是一組測試用例的集合,這組測試用例主要是針對同一個邏輯功能模塊。在一個項目中爲支持大量的測試場景,可以創建任何數量的測試集。
2、一個測試用例是一組測試步驟的組合,這一組測試步驟組合起來主要是爲了測試服務某一個特定的功能,你可以根據需要在一個測試用例中添加測試步驟,這裏的使用是很靈活的,更多的內容留給讀者們自己研究。
3、測試步驟是功能測試的“積木”,它們被添加到測試用例中,用來控制、執行測試步驟和檢驗被測試服務的功能。在項目中創建測試集是爲了將測試用例集合到同一個邏輯單元中 。舉例:假如有一個銀行系統,則它至少有查詢賬務的功能,又有付款的功能,那麼,我們會將這二個功能歸到兩個不同的測試集中,再通過組織測試用例來進行測試。你的項目可以包含任意數量的測試集,並且你可以通過雙擊項目名稱,在打開的概要信息窗中選擇“TestSuites”標籤來執行這些測試集(順序執行或並行執行,可選擇工具欄的按順序執行圖標或並行執行圖標)。
在這裏插入圖片描述

創建一個新的測試集可通過以下方式創建:

1、 通過右鍵單擊項目名稱的彈出菜單,選擇“New TestSuite”
2、 右 鍵 點 擊 上 圖 “TestSuites” 標 籤 頁 中 任 何 位 置 , 在 彈 出 的 菜 單 , 選 擇 “New
TestSuite”
3、 通過上圖的 圖標也能創建一個新的測試集
4、 測試集還可以在初始創建項目,導入 WSDL 或輸入 WSDL 的 URL 後,勾選“Create TestSuite”,勾選此選項,系統會自動幫我們爲每個接口都創建一個測試集,後續可根據測試用例需要進行調整即可。
在這裏插入圖片描述

一個測試集可以包括任意數量的測試用例,執行時可以按順序執行也可以並行執行,可以通過點擊測試集窗口中工具欄的擇執行的順序。
在這裏插入圖片描述

創建測試用例的方式與創建測試集的方式基本一致,主要有以下幾種:

1、 右鍵單擊項目中的測試集名稱,在彈出的右鍵菜單中選擇“New TestCase”
2、 點擊上圖創建測試用例圖標:
3、 在上圖中“TestCases”標籤頁中任何位置,右鍵點擊,選擇彈出菜單中的“NewTestCase”

一個測試用例包含一定數量的測試步驟,目的是爲了向服務接口發起請求並對測試結果進行校驗。一個測試用例在執行的時候,它的執行順序與步驟所顯示的順序一致,如果有循環或分支,那麼需要在測試步驟或測試腳本中進行配置。
在這裏插入圖片描述

右鍵單擊上圖某一測試步驟,彈出的右鍵菜單中包含“Run from here”選項,該選項方便在測試用例編寫時,測試用例的調試。
在這裏插入圖片描述

Run fromhere:從所選擇的測試步驟開始執行測試用例,非常方便調試。
Open Editor:打開所選擇的測試步驟編輯窗口,雙擊上圖的測試步驟也能打開編輯窗口。
Enable or Disable:測試步驟可以被啓動,也可以被禁用,允許你有選擇地執行不同的
測試步驟,當你選擇 Disable 測試步驟時,該步驟將變成灰色。
Insert Step:在當前選擇的步驟之前插入一個新的測試步驟。
Rename and Delete:快速地重命名或刪除測試步驟,在一個測試用例中,測試步驟的 名稱要惟一。
Move or Clone to other TestCases:測試步驟可以被複制或移動到當前工作空間的其它 測試用例中,如果目標測試用例與要複製的測試步驟不在同一個項目中,那麼你還需要復 制接口到目標項目中,SoapUI 會引導複製接口的操作。
Move up or down:你可以通過這個功能移動測試步驟的執行順序。

你可以選擇多個測試步驟,右擊時可提供批量刪除、啓用、禁用所選擇步驟的操作。

二、測試步驟

正如上一節所說:測試步驟是功能測試的“積木”,每一個測試步驟都在驗證被測服務的功能。測試步驟默認情況下是按順序執行,但存在幾種可能的分支:循環、甚至調用其它的測試用例,即當有需要時會有複雜的測試用例。任意數量的測試步驟都可以被添加到一個測試用例裏,添加時:

1、可以通過右鍵單擊測試用例名稱,在彈出菜單中選擇“AddStep”;
2、也可以通過右鍵點擊測試步驟名稱,在彈出的菜單中選擇“Insert Step”;
3、下圖爲雙擊測試用例名稱打開的測試用例信息框,紅包方框內的圖標是各種測試步驟,點擊對應的圖標會彈出相應測試步驟添加框。
在這裏插入圖片描述

選擇一個測試步聚,右鍵單擊後的彈出菜單顯示了該用例所具有的行爲,且左邊底部也顯示了相應測試步驟的屬性,可以直接進行設置。下圖中綠色方框中的所標記的行爲是SOAP 請求測試步驟所特有的,其它的選項則是所有的測試步驟都具有。如下圖所示:
在這裏插入圖片描述

用例裏都會有一些主要的測試步驟用來驗證接口的功能,它們既可以發送請求給接口,也可以接收接口返回的結果報文,且響應報文可以經由一個標準的斷言機制進行校驗。你可以很輕鬆地組合一個測試用例的所有步驟,並且能夠在它們之間很方便地共享數據,例如你也許會使用一個標準的 HTTP 請求登錄到一個服務上,然後使用接收到的 HTTP 響應報文作爲入參,用 SOAP 發起請求,最後再使用 JDBC 的測試步驟驗證數據庫的結果數據。測試步驟—屬性相關屬性測試步驟一般用來管理需要參數化的屬性,測試步驟主要有:

Properties:允許你定義任意數量的屬性,屬性可以從文件讀出或寫入,可以用來參數化請求、斷言等。
Property Transfer:允許你在測試步驟間傳遞或抽取屬性值,如你可以從一個響應信息中抽取一個值,然後通過 DataSink 測試步驟寫入到一個外部文件。
DataGen:允許你創建一個計數器、隨機值等的動態的屬性。

測試步驟—數據相關,SoapUI Pro 添加了一些測試步驟主要用來與外部數據源交互,可讀可寫,主要有:

DataSource:允許你從一些外部源文件中讀到屬性值,外部源文件包含數據庫 、EXECL 文件、directories 等,之後可通過使用屬性傳遞等將值作爲請求入參或驗證響應報文等。
DataSource Loop:與 DataSource 成對出現,主要用在當 DataSource 有多行數據時,可通過 DataSource Loop 循環得到每一行的值來作爲入參發起調用,在 SoapUI 中這是一種基於數據驅動的測試。
DataSink:允許你將屬性值寫到外部存儲文件中,如數據庫、EXECL 文件等,以供後續分析和處理。

測試步驟—執行流程雖然在測試用例中測試步驟的執行是順序的,但 SoapUI 提供了一些測試步驟允許我們可以做分支、循環等:

Conditional Goto:檢查返回的響應報文中指定的值,並跳轉到步驟中符合條件配置的目標步驟。
Delay:根據配置的毫秒數暫停測試步驟的執行。
Run TestCase:轉去執行指定的目標測試用例,當某些測試步驟需要在一些用例運行前先被執行,可以使用這種方式進行處理。
DataSource Loop:正如上面所提到的,根據 DataSource 所配置的行數,以每行爲一次入參,循環地執行測試用例中特定的某幾個步驟。

測試步驟—其它類型,SoapUI 還提供了其它類型的測試步驟,讓你可以做任何需要做的事情。Script TestStep測試步驟讓我們可以寫任意的腳本(包括 groovy 和 javascript)做幾乎所有需要做的事情,一般會在以下幾個場景使用:

一些無法通過默認的斷言機制實現的複雜報文的校驗。
複雜的分支或循環。
以數據驅動來生成測試步驟的情況,如從數據庫中動態生成測試步驟。
集成外部系統來讀寫數據。
觸發外部的活動或進程,如發送郵件或啓動程序。
與用戶的交互(對話框等)來得到輸入或控制執行。

SoapUI 提供強大的功能,基本上可以滿足你所有服務接口的功能測試需求。

對啦,如果需要SoupUI的視頻資源,歡迎添加扣扣裙:636859964,入裙後你會有以下【福利】
–1. 裙文件可下載大量軟件測試學習資源,每週持續更新,不要白不要
–2. 每週一到週五羣內會公佈免費軟件測試公開課,不聽白不聽
–3. 裙內每天發佈各大城市招聘信息(北上廣深居多…)
–4. 裙內有衆多測試技術大牛提供問題答疑,不學白不學
–5. 可免費領取軟件測試電子版經典書籍(包括《Google軟件測試之道》《Python核心編程 第3版》…)
–6. 你不來是你的損失,反正我會一直在原地等你~~

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