[英]How do I test JSON schema in postman using tv4?
這就是我正在嘗試的,但它總是通過測試,即使是糟糕的結果。
pm.test("Schema is valid", function () {
var data = pm.response.json();
var schema = {
...
my schema
...
};
tv4.validate(data, schema);
});
這不起作用的原因(簡而言之)是Postman(tv4)使用的底層庫不再維護。 在今天早些時候遇到這個問題后,我找到了一個解決方案 :
tv4.validate(data, schema, false, true)
后兩個參數是checkRecursive和banUnknownProperties 。 如上所示設置這兩個標志使驗證按預期工作。
您可能還會發現此代碼段很有用,它會通過控制台報告任何驗證錯誤:
pm.test("Response body is valid", function() {
var data = JSON.parse(responseBody);
var valid = tv4.validate(data, schema, false, true);
if (valid !== true) {
console.log(tv4.error);
}
pm.expect(valid).to.be.true;
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.