使用jmeter+ant進行介面自動化測試(資料驅動)之一:設計jmeter指令碼

我是冰霜發表於2018-01-16

最近在做介面測試,因為公司有使用jmeter做介面測試的相關培訓資料,所以還是先選擇使用jmeter來批量管理介面,進行自動化測試。話不多說,進入正題:

1.使用csv檔案儲存介面測試用例,方便後期對介面進行維護(先新建txt檔案,然後副檔名改為.csv,不要新建xls再改為csv,不然會出現讀取不到檔案的情況)

注意:這裡並沒有在介面層面進行業務邏輯驗證,只是單純地驗證每個介面的各種可能情況(根據引數值不同設計用例),確保單個介面的有效性

2.寫好測試用例後,設計jmeter指令碼

①新建一個執行緒組,並線上程組下新增HTTP請求預設值和監聽器

HTTP請求預設值中填寫伺服器的ip和埠號

 

②線上程組下新增一個迴圈控制器,迴圈次數設定為永遠(對測試用例進行遍歷)

 ③迴圈控制器下新增CSV Data Set ConFig控制元件(讀取csv檔案中的資料)

 ④迴圈控制器下新增 “如果(If)控制器”,對用例優先順序的進行篩選

注意:條件那裡的寫法  "${priority}"=="H",priority即為csv檔案中定義的用例優先順序那一列

⑤根據優先順序判斷用例是否執行後,在第四步的 “如果(If)控制器”下再新增2個“如果(If)控制器”,用以區分執行POST請求和GET請求

⑥POST請求的配置

在POST請求的 “如果(If)控制器” 下新增一個HTTP請求

 

 

⑦GET請求的配置

在GET請求的 “如果(If)控制器” 下新增一個HTTP請求

 ⑧在post請求和get請求下分別配置響應斷言

指令碼到這裡就設計完成了,接下來就可以執行測試了

 

 在這次介面測試過程中花費時間較多的是測試用例的編寫,因為在編寫每一條用例時都要調一下介面,檢視返回值是什麼,如何傳參等等,大概有270多條介面,有些錯誤是由於資料庫缺表少欄位導致、也有些是由於傳參不正確導致的異常;如果對介面的引數更瞭解,知道它們是如何對應到資料庫表的欄位時,會更為順利,甚至能夠在資料庫構造需要的資料。

相關文章