1. 程式人生 > >【原創】Postman 如何處理上一個介面返回值作為下一個介面入參?

【原創】Postman 如何處理上一個介面返回值作為下一個介面入參?

今天做介面測試,有一個介面的引數是一個校驗 token,會實時更新,開發提供了一個單獨返回實時 token 的介面,所以就需要在功能介面使用時呼叫 token 介面的返回值,作為功能介面的引數來使用。

網上搜了一下,都沒有現成的使用說明,剛才研究出來了,就記錄下步驟,方便後面的同學。

如果返回 token 的介面的返回值,是標準的 JSON 格式的話,就很簡單的兩步就行了。

1.token 介面設定全域性變數

第一步就是執行 token 介面,並把介面返回值裡面的 token 值,賦值給一個全域性變數。

賦值操作是寫在 Tests 裡面的,內容如下:

var jsonData = JSON
.parse(responseBody); pm.globals.set("token", jsonData.token);

下面是我設定的截圖:

2.功能介面引數中呼叫全域性變數

第二步當然就是獲取前面設定的全域性變數的值,作為功能介面的入參了。

獲取的實現是寫到 Pre-request Scripts 裡面實現的,內容如下:

pm.globals.get("token");

同時,要設定介面的 Params,新增一個 Key,Key 的名稱為引數的名稱,Key 的內容為全域性變數名,比如{{token}}。

下面是我設定的具體的截圖:

3.順序執行介面呼叫

設定完成了,先呼叫 token 介面,然後呼叫功能介面就行了,這地方要注意執行順序,如果反過來的話,介面呼叫會失敗。

另外,如果 token 介面設定的全域性變數生效的話,我們還可以通過工具提供的入口來檢視具體的 Globals 資訊,如同:

好了,上面說了最簡單的操作的步驟,還可能有一些其他的情況,比如 token 介面返回值不是標準 JSON 時,還需要對返回值做個處理,比如有些同學不想設定全域性變數,那麼就需要提前配置一個環境變數供使用等等。

更多驚喜等著我們去發現。

本文首發於公眾號「sylan215」,十年測試老兵的原創乾貨,關注我,漲姿勢!

sylan215