1. 程式人生 > >[postman][API test]Postman restAPI 測試學習筆記

[postman][API test]Postman restAPI 測試學習筆記

pos for delay stack bject -i [0 detail object

痛點:最近有個API網關的兼容性測試任務,需要驗證API是否可用,返回值符合預期,如果手工復制粘貼curl命令,繁瑣且低效

調研時發現了Postman 這個chrom插件,試用了2天後發現使用起來很方便,現總結如下:

Postman簡介:Postman是一種網頁調試與發送網頁http請求的chrome插件。我們可以用來很方便的模擬get或者post或者其他方式的請求來調試接口

安裝:通過chrome瀏覽器打開chrome網上應用店直接添加到chrome插件中 (可能需要番墻...)

使用方式: 對照測試軟件的接口API文檔,設置對應的Header Body Test校驗內容

使用技巧總結:

1.在body中用{{x}}使用環境變量,在test中environment.x調用環境變量


2.註冊環境變量:postman.setEnvironmentVariable("volumeid", responseJSON.data.elements[0].id); 這樣就可以在下個case中直接調用了

3.延時1-10秒
GET https://postman-echo.com/delay/[1~10]

4.延時指定的毫秒
function pausecomp(millis)
{
var date = new Date();
var curDate = null;
do { curDate = new Date(); }
while(curDate-date < millis);
}
//pausecomp(10000);
pausecomp(environment[‘sleep-interval‘]);

5.數組json處理
//refer to https://stackoverflow.com/questions/42257293/extract-value-from-array-of-objects-in-postman
postman.setEnvironmentVariable("volumeid", responseJSON.data.elements[0].id);

6. 所有case寫完後,可以統一Run (如果不加入try -catch處理,會停在第一個調用方法失敗的地方)

Postman遇到的坑:
1. "snapshot_id":"{{snapshot_id}}" ,如果不加雙引號,會報錯: "detail": "invalid character ‘s‘ looking for beginning of value",Postman有時候不會自動處理雙引號

[postman][API test]Postman restAPI 測試學習筆記