使用JMeter進行API功能測試
使用JMeter進行API功能測試
Apache JMeter是一種流行的開源軟件,用於性能測試。
在本博客中,我們將闡明如何使用JMeter for REST API自動化進行功能測試。
我們使用了https://reqres.in/site中的示例API ,其中列出了可用於測試的多個真實API。我們選擇了用戶管理API,可以註冊用戶,登錄用戶,列出所有用戶,創建用戶,更新用戶和刪除用戶。
列出用於此測試腳本的API:
/api/users?page=2
/api/users/2
/api/register
/api/login
使用JMeter,我們考慮了以下示例REST端點:
- 使用HTTP POST添加新用戶。
- 使用HTTP GET檢索所有用戶的列表。
- 使用HTTP PUT更新新添加的用戶。
- 使用HTTP DELETE刪除添加的用戶。
步驟1:創建新的測試計劃 - >右鍵單擊 - >添加 - >線程 - >線程組
- 將線程數(用戶)設置為10 - 我們將有10個用戶執行測試計劃。
- 將Ramp-up周期(以秒為單位)設置為10 - Ramp-up周期告訴JMeter在處理下一個用戶之前的延遲時間。
- 將循環計數設置為10 - 執行測試的次數。
註意:邏輯控制器確定執行用戶請求的順序。簡單控制器只是用戶請求的容器。
第2步: 線程組 - >右鍵單擊 - >添加 - >邏輯控制器 - >簡單控制器
第3步: 簡單控制器 - >右鍵單擊 - >添加 - >采樣器 - > Http采樣器請求
POST方法
POST請求用於在數據源中創建新記錄。
添加新用戶
步驟1:創建POST方法請求,以使用兩個參數(電子郵件和密碼)註冊新用戶,並將其重命名為“註冊成功”。
- 輸入協議為“https”,IP地址為“reqres.in”。
- 選擇方法為“POST”。
- 輸入API路徑。同樣,我們可以成功登錄並使用“POST”方法創建用戶。
- 名稱:發布項目
- 方法:POST
- 正文數據:JSON項目對象
在響應斷言中添加要測試的模式
第2步 : 創建文本文件並將參數保存在該文件中。Jmeter動態使用CSV數據存儲多個數據對象,更新數據值等。
第3步: 線程組→添加Http頭管理器
添加內容類型和令牌
第4步:保存並運行註冊成功測試用例。
步驟5 : Threadgroup-> Add-> Listener-> View Results Tree
GET方法
GET方法用於檢索數據源中的信息。
檢索所有用戶的列表。
第1步:簡單控制器 - >右鍵單擊 - >添加 - >另一個采樣器 - > Http采樣器請求
- 添加另一個HTTP采樣器請求。
- 輸入協議為“https”,IP地址為“reqres.in”。
- 選擇方法為“GET”。
- 輸入列表用戶的API路徑。
- 路徑:/ users / $ {userId}
- 方法:GET
第2步:Listusers->右鍵單擊 - >添加 - >斷言 - >響應斷言
第3步: 列表用戶→添加 - >監聽器
- 保存並運行“listusers”測試用例。
- 查看列出所有用戶的響應數據。
PUT方法用於更新數據源中的現有記錄。
更新添加的用戶。
第1步:簡單控制器 - >右鍵單擊 - >添加 - >另一個采樣器 - > Http Request Sampler
- 添加另一個HTTP請求采樣器並將其命名為“updateusers”。
- 將方法設置為“PUT”。
- 輸入協議為“https”,ip地址為“reqres.in”。
- 輸入API路徑。
- 將用戶的詳細信息添加為正文數據。
第2步:值直接傳遞到帖子數據。
步驟3: 更新用戶 - >添加 - >斷言 - >響應斷言
第4步:保存並運行“updateusers”測試用例。 查看更新用戶的響應數據。
刪除方法
DELETE請求用於刪除數據源中的現有記錄。
從列表中刪除用戶。
第1步:簡單控制器 - >右鍵單擊 - >添加 - >另一個采樣器 - > Http請求采樣器:
- 添加另一個HTTP請求采樣器並將其命名為“deleteusers”。
- 將方法設置為“DELETE”。
- 輸入協議為“https”,IP地址為“reqres.in”。
- 輸入API路徑。
- 將用戶的詳細信息添加為正文數據。
步驟2: 刪除用戶 - >添加 - >斷言 - >響應斷言
第3步 : 保存並運行“Deleteusers”測試用例。查看已刪除用戶的響應數據。
最後,我們可以添加不同的監聽器,如“查看結果樹”來結束。要添加,請右鍵單擊並選擇“偵聽器”→“查看結果樹”。
在這裏,您可以看到每個測試用例的每個樣本請求的請求和響應數據。
作為一個例子,我們為下面的一個負面測試用例編寫了腳本:
註冊失敗
第1步:簡單控制器 - >右鍵單擊 - >添加 - >另一個采樣器 - > Http采樣器請求:
- 添加另一個HTTP請求采樣器並將其命名為“Register unsuccess”。
- 將方法設置為“POST”。
- 輸入協議為“https”,IP地址為“reqres.in”。
- 輸入API路徑。
- 在POST正文數據中添加用戶的詳細信息。
步驟2:註冊 失敗 - >添加 - >斷言 - >響應斷言
步驟3: 保存並運行“register unsuccess”測試用例。查看註冊失敗用戶的響應數據。
來自視圖結果的響應代碼來自視圖結果的響應數據
上述腳本的摘要報告。
斷言結果
JMeter中提供了各種報告。我們可以根據項目的需要使用它們。
使用JMeter進行API功能測試