腳本進階
- 一、前言
- 二、responseBody
- 三、pm.response
- 四、檢查回應體的JSON值
- 五、Setting a nested object as an environment variable
- 六、Getting an environment variable(whose value is a stringified object)
一、前言
??本文將講述一下Postman的腳本高級用法,閑話少說,上語法,
二、responseBody
??responseBody,即回應腳本,型別為string,可以利用JSON.parse(responseBody)將其轉化為物件,為了查看其區別,將其輸出到“Postman Console”視窗查看,如圖所示:

var data1 = responseBody; //請求體
var data2 = JSON.parse(esponseBody); //將請求體這個JSON字串轉成字串
console.log(typeof data1); //輸出請求體資料型別,是string
console.log(data1); //輸出請求體內容
console.log(typeof data2); //輸出轉換后的資料型別,是object
console.log(data2); //輸出轉換后的物件
三、pm.response
??pm.response用于回傳回應資訊,測驗結果如圖所示:

var data1 = pm.response; //回應資訊,包括Body、Code、Status、Cookies、Headers等
var data2 = pm.response.json(); //將回應資訊中的JSON字串轉成物件
console.log(typeof data1); //輸出請求體資料型別,是string
console.log(data1); //輸出請求體內容
console.log(typeof data2); //輸出轉換后的資料型別,是object
console.log(data2); //輸出轉換后的物件
四、檢查回應體的JSON值
??如果要檢查回應體第一本book中的numRaters的值為51459,則腳本如圖所示:

五、Setting a nested object as an environment variable
??Setting a nested object as an environment variable即將嵌套物件設定為環境變數,示例腳本如下:
var array = [1,2,3,4];
pm.environment.set("array",JSON.stringify(array,null,2));
var obj = {a:[1,2,3,4],b:{c : 'val'}};
pm.environment.set("obj",JSON.stringify(obj));
??發送介面請求后,請查看當前環境中的變數,可以看到成功添加了一個嵌套物件為變數的值,如圖所示:

六、Getting an environment variable(whose value is a stringified object)
??Getting an environment variable(whose value is a stringified object)即獲取一個變數(其值是一個stringfied物件),示例腳本如下,
//如果資料來自一個未知的源,那么這些陳述句應該封裝在try-catch塊中,
var array = JSON.parse(pm.environment.get("array"));
//控制臺輸出結果
console.log(array);
??發送請求后,查看“Postman Console”視窗的輸入結果,如圖所示:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/375846.html
標籤:其他
