在Linux上使用Postman腳本的完整流程
在Linux系統上使用Postman腳本,需先安裝以下工具:
sudo dpkg -i Postman-linux-x64-*.deb
);sudo apt install nodejs npm
);npm install -g newman
)。Postman腳本分為預請求腳本(請求發送前執行,用于設置變量、參數化請求)和測試腳本(請求響應后執行,用于驗證結果、處理數據),均使用JavaScript編寫。
用于在請求發送前準備數據,例如設置環境變量、生成簽名等。
示例:設置一個全局變量authToken
,用于后續接口的身份驗證。
// 在請求的"Pre-request Script"標簽頁編寫
pm.globals.set("authToken", "Bearer " + CryptoJS.MD5("username:password").toString());
說明:通過pm.globals.set()
方法設置全局變量,可在后續請求的URL、Headers或Body中引用(如{{authToken}}
)。
用于驗證響應數據的正確性,是API測試的核心。常用斷言包括狀態碼、響應時間、正文內容等。
示例:驗證登錄接口的響應狀態碼為200,且返回的token
字段存在。
// 在請求的"Tests"標簽頁編寫
pm.test("Status code is 200", function () {
pm.response.to.have.status(200); // 斷言狀態碼為200
});
pm.test("Response contains token", function () {
const jsonData = pm.response.json(); // 解析響應正文為JSON
pm.expect(jsonData.token).to.exist; // 斷言token字段存在
});
說明:使用pm.test()
定義測試用例,pm.response.to
提供鏈式斷言方法(如have.status
、have.jsonBody
),pm.expect()
用于復雜斷言(如字段存在性、值匹配)。
使用Newman工具批量執行Postman集合(JSON格式),適合CI/CD流程。
基本命令:
newman run /path/to/your/collection.json
常用選項:
-e /path/to/environment.json
:指定環境變量文件(如包含baseUrl
、apiVersion
等變量);-g /path/to/globals.json
:指定全局變量文件(如包含authToken
等變量);-r htmlextra,json
:指定報告格式(如htmlextra
生成可視化HTML報告,json
生成原始JSON報告);--iteration-count 5
:指定迭代次數(如循環執行5次)。newman run /path/to/collection.json -e /path/to/environment.json -g /path/to/globals.json -r htmlextra,json --iteration-count 3
說明:集合文件需通過Postman導出(點擊集合右上角的三個點→Export),環境變量和全局變量文件同理。
pm.environment.set()
設置,pm.environment.get()
獲?。▋H當前環境有效);pm.globals.set()
設置,pm.globals.get()
獲?。ㄈ钟行В?;pm.collectionVariables.set()
設置,pm.collectionVariables.get()
獲?。▋H當前集合有效)。pm.sendRequest()
發送異步HTTP請求,例如獲取用戶信息后再獲取訂單信息。pm.sendRequest("GET", "https://api.example.com/users/1", function (err, response) {
if (!err) {
const userId = response.json().id;
pm.sendRequest("GET", `https://api.example.com/orders?userId=${userId}`, function (err, orderResponse) {
console.log(orderResponse.json());
});
}
});
console.log()
輸出變量值到Postman控制臺(點擊頂部導航欄的View→Show Postman Console);