最近在做介面測試,因為公司有使用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多條介面,有些錯誤是由於資料庫缺表少欄位導致、也有些是由於傳參不正確導致的異常;如果對介面的引數更瞭解,知道它們是如何對應到資料庫表的欄位時,會更為順利,甚至能夠在資料庫構造需要的資料。