我已经尝试过!== null
,但即使字段返回0
或空字符串,它也会返回 PASS。
自 2019 年 3 月起有效:
pm.test("Check if value is null", function() {
var jsonData = pm.response.json();
pm.expect(jsonData.<yourField>).not.eq(undefined);
});
你试过吗
pm.expect(response.your_field).to.eql(null);
?
如果要检查列表中返回的第一个项目的 ID,则可以使用 not.equal(null)
:
pm.expect(pm.response.json().value[0].Id).not.equal(null);
请注意,">等于"一词是完全拼写出来的,尽管缩短的"eql"确实有效。
试试这个:
pm.test("your-value is not null", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.your_value).not.eql(null);
});
Postman 不会将不存在的路径引用为 null,而是引用为未定义。
pm.expect(JsonResponse.FAKE.PATH).not.eql(undefined);
此测试应该失败,因为此假 json 路径实际上是未定义的。
我遇到了类似的问题。但是以以下方式检查它对我有用
tests["Item is not null"] =
jsonData.item !== undefined;
您可以访问响应 json,如下所示:
var json = JSON.parse(responseBody);
var yourVAr = json.yourVar
if(yourVar == null){
//your var is null here
}
我已经做了类似的工作,这是代码的一部分,它运行良好检查此代码
var jsonData = JSON.parse(responseBody);
for(i=0; i<jsonData.data.length; i++){
tests["due date is between given date range"] = jsonData.data[i].duedate < environment.Cenddate && jsonData.data[i].duedate > environment.Cstartdate;
tests["response body has department name"] = jsonData.data[i].department.name !== null;
}
怎么样:
var jsonData = JSON.parse(responseBody);
tests["Item is not null"] =
jsonData.item !== null &&
jsonData.item !== ' ' &&
jsonData.item !== 0;
你要在 tests[] 上验证的函数后面放置 + [i],这样只有它会在每个数组上返回有效的语句。例如
function checkIsNull() {
var items = json.data.pois.items
var PlaceIdIsNull = true;
var subTypeExtraIsNull = true;
var websiteIsNull = true;
for (var i = 0; i < items.length; i++) {
if (items[i].placeId !== null) {
PlaceIdIsNull = false;
}
if (items[i].subTypeExtra !== null) {
subTypeExtraIsNull = false;
}
if (items[i].website === null) {
websiteIsNull = false;
tests['website is null only happened on these arrays' + [i]] = true;
}
tests['Place ID is null '] = PlaceIdIsNull
tests['subTypeExtra is null '] = subTypeExtraIsNull
}
}
checkIsNull();
结果:
通行证地点 ID 为空
PASS subTypeExtra 为空
试试这个:
let jsonData = pm.response.json();
pm.expect(jsonData["yourfield"]).to.eq(null);
> 截至 2022 年 9 月 19 日有效
pm.test("Check that response body is not null", ()=>{
pm.response.to.be.have.body
})