跳到內容

JavaScript 程式碼

JavaScript 與 TypeScript 共用同一個執行 環境:同一個引擎、同一套 API、同一份內建函式庫。本頁專講它自己獨有的東西 — 兩層相容介面。

// `input` = 收到的值,`vars` = 執行變數
const utilisateurs = input.data.filter((u) => u.actif);
console.log(`${utilisateurs.length} utilisateurs actifs`);
return _.sortBy(utilisateurs, 'nom');

正是這一層讓匯入的 Postman 集合裡的腳本 不必重寫就能運作。

介面說明
pm.variables, pm.environment, pm.globals, pm.collectionVariables全部對應到同一個執行變數空間
pm.iterationData逐次疊代的資料
pm.request, pm.response目前的請求與回應
pm.test(name, fn), pm.test.skip測試
pm.expect斷言(chai)
pm.sendRequest額外發出一個呼叫
pm.info執行的中繼資料
pm.vault保險庫
pm.visualizer.set(template, data)視覺化工具
pm.cookies, pm.cookies.jar()Cookie
pm.setNextRequest, pm.execution.setNextRequest, .skipRequest, .location流程控制
postman.getResponseHeader舊版 API
pm.test('le statut est 200', function () {
pm.expect(pm.response.code).to.eql(200);
});
pm.environment.set('commandeId', pm.response.json().id);

匯入的 Bruno 集合使用:bru.* 物件 — 包含 bru.runRequest(name) — 以及可以直接裸用的 test() 函式。

這些相容層的存在,是為了讓匯入時什麼都不會壞掉。中期而言,還是建議改用原生 的方塊:一個斷言比埋在腳本裡的 pm.test 好讀得多,它的兩個輸出 then / else 在圖上看得見,而它的訊息也會 直接出現在 CI 的記錄裡。