簡體   English   中英

postman 中的全局函數

[英]Global functions in postman

我正在編寫這個全局 function 來斷言具有預期消息的字段並傳遞字段和 expectedMessage 作為參數。

   postman.setEnvironmentVariable("errorMessages", () => {
   var assertFieldErrorMessage = (field,expectedMessage) => {
   if (responseBody.has("data")) {
        pm.expect(pm.response.json().data.fieldErrors.get(field)).to.include(expectedMessage);
     } 
    };
 return {
    myPackage: {
        assertFieldErrorMessage
    }
};

這就是我從我的測試腳本中調用 function 的方式

   let errorMessages = eval(environment.errorMessages)();
   errorMessages.myPackage.assertFieldErrorMessage("email","Invalid value"); 

這就是響應正文的樣子:

      "data": {
    "globalErrors": [],
    "fieldErrors": {
        "email": [
            "Invalid value for - "
]
    }
}

很難斷言 fieldErrors 中的字段而不對其進行硬編碼。 這有什么問題?

利用:

pm.expect(pm.response.json().data.fieldErrors[field]).to.include(expectedMessage);

代替:

pm.expect(pm.response.json().data.fieldErrors.get(field)).to.include(expectedMessage);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM