在 Postman 里面寫接口測試用例其實就是寫測試腳本。下面我們來學習如何寫一個簡單的接口測試用例。
1、獲取 API 信息
以獲取實時天氣作為示例:
1、API 的方法:GET
2、API 的 URL: https://api.seniverse.com/v3/weather/now.json
3、API 的參數(shù):
-
請求參數(shù):
參數(shù)名 參數(shù)類型 參數(shù)意義 是否必選 key string 你的API密鑰(需要自主到心知天氣平臺獲?。?/td> true location string 查詢的地理位置 true language string 結果表示的語言 false,默認簡體中文 unit string 結果表示的單位(華氏度,攝氏度) false,默認攝氏度 -
響應參數(shù):
參數(shù)名 參數(shù)類型 參數(shù)意義 location 對象:包括id, name, country, time_zone, time_zone_offset now 對象:包括 text,code, temperature, feel_like last_update 日期
2、編寫用例腳本
首先創(chuàng)建一個測試腳本。
在右側的 New Tab 中輸入方法和 URL
-
點擊 Params 設置參數(shù)
3、運行用例腳本
點擊右側的 Send 按鈕發(fā)送請求運行腳本。

運行后查看測試結果。

從結果可以看到腳本運行是成功的,響應狀態(tài)是200。
4、用例斷言
上面用例腳本已經(jīng)執(zhí)行成功了,但大家想一個問題:腳本執(zhí)行成功就代表用例通過嗎?
答案是否定的。
腳本運行成功返回200的狀態(tài)碼只能說明發(fā)送請求和接收響應沒有問題,但響應內容不一定是我們想要的。這個時候要拿響應內容與 API 文檔的響應參數(shù)做對比,響應內容與 API 文檔的響應參數(shù)符合則用例測試通過,否則用例測試失敗。例如上面返回 Body 結果中,location 的 path 字段就不是 API 文檔中期望的響應參數(shù)。
一個測試用例中沒有斷言就不是測試用例,所以接口測試用例中也要添加斷言。下面我們以斷言城市名稱 name 參數(shù)為例為這個測試用例添加一個斷言。
編寫斷言
切換頁面到 Tests 欄,編寫斷言的 JavaScript 腳本。
var jsonData = JSON.parse(responseBody);
tests["檢查城市名稱"] = jsonData.results[0].location.name === "深圳";

查看斷言結果
重新發(fā)送一次請求,查看 Test Results 欄,PASS 狀態(tài)代表斷言通過。

為了看斷言失敗的效果,故意改錯斷言的參數(shù)值,再發(fā)送一次請求。

