1. 程式人生 > 其它 >POSTMAN使用03_傳遞token引數,實現介面測試

POSTMAN使用03_傳遞token引數,實現介面測試

說明:Postman版本:Version 8.12.1;java開發工具:IDEA

  今天在測試時,遇到了一個GET介面,是通過token來獲取資料的,因此,需要通過獲取token的介面返回token,然後請求其他介面時在header頭中帶上token資訊。

一、準備一個獲取token的介面(為了先獲取到token值,後面好使用此token值)

從上圖可以看到,該介面給我們返回了token變數。

二、將上面介面中的token變數設定為全域性變數。

現在我們需要把這個token變數設定成全域性變數,以便後面操作時可以帶上這個token變數。

1、新建一個全域性變數

2、設定環境名稱、變數名稱

A、設定環境名稱(隨便起名字)

B、設定變數名稱(隨便七名字)

INITIAL VALUE 和CURRENT VALUE不用設定,當獲取token變數後,軟體會自動將值填入。

設定後效果如下:

3、在上面介面的Tests中設定獲取token值的程式碼

指令碼如下: vardata=JSON.parse(responseBody); //token在data資料的節點下 if(data.data.tokenMi){ tests["Bodyhastoken"]=true; postman.setEnvironmentVariable("token",data.data.tokenMi);
} else{ tests["Bodyhastoken"]=false; } 指令碼說明: A、token變數名稱要與介面獲取的名稱一致

B、data.data.tokenMi或者data.tokenMi的選擇

data.token是和介面返回結果中token的位置有關的

1)介面返回結果為:

{
"status": "Success",
"token": "
engoalbid504e97a3f8a6683d929541662ad41a6",
"userid": "19",
"message": "UUU"
}
那麼,獲取指令碼要寫成

vardata=JSON.parse(responseBody);
//token在data資料的節點下 if(data.tokenMi){ tests["Bodyhastoken"]=true; postman.setEnvironmentVariable("token",data.tokenMi); } else{ tests["Bodyhastoken"]=false; } 2)介面返回結果為: { "msg":"登入成功!", "code":200, "data":{ "tokenMi":"engoalbid504e97a3f8a6683d929541662ad41a6", "userid":"19", "username":"UUU" } } 那麼,獲取指令碼要寫成 vardata=JSON.parse(responseBody); //token在data資料的節點下 if(data.data.tokenMi){ tests["Bodyhastoken"]=true; postman.setEnvironmentVariable("token",data.data.tokenMi); } else{ tests["Bodyhastoken"]=false; } 4、測試是否設定成功 A、觸發一次介面

B、檢視設定的全域性token變數是否有值了

1選擇全域性變數

2、點眼睛圖示

C、獲取到了token值

配置成功

三、GET中使用token變數值

1、新建GET測試介面,在Heads中設定token值

說明:

KEY輸入的值,與後端controller中配置的token名稱一致

VALUE,{{token}},其中的token就是設定的全域性變數裡面的變數名稱

2、介面測試,連線成功。