检查 Postman 测试用例中的空值。not.eql() 或 .not.equal() 不起作用
Check null value in Postman test cases .not.eql() or .not.equal() are not working
我正在处理一个 API 项目并使用 Postman 测试 APIs。我写了几个测试用例来检查 null 如下,
//user id is present
pm.test("user id is present", function() {
pm.expect(jsonData.data[0].userId).not.eql(null);
});
还按照 this 答案中所述尝试使用 .not.equal()
。
//user id is present
pm.test("user id is present", function() {
pm.expect(jsonData.data[0].userId).not.equal(null);
});
然而,即使 userId 为 null
,这一切都将通过。是否进一步考虑检查 Postman 测试用例中的空值?
首先,打开控制台和 运行 流动代码段来检查类型:
pm.test("user id is present", function() {
console.log(typeof jsonData.data[0].userId);
console.log(typeof jsonData.data[0]);
console.log(typeof jsonData);
}
如果 undefined
对应 jsonData.data[0].userId
,您需要更改测试以断言 null
和 undefined
:
pm.test("user id is present", function() {
pm.expect(jsonData.data[0].userId).to.exist //check if it is not equal to undefined
pm.expect(jsonData.data[0].userId).to.not.be.null; //if it is not equal to null
}
我正在处理一个 API 项目并使用 Postman 测试 APIs。我写了几个测试用例来检查 null 如下,
//user id is present
pm.test("user id is present", function() {
pm.expect(jsonData.data[0].userId).not.eql(null);
});
还按照 this 答案中所述尝试使用 .not.equal()
。
//user id is present
pm.test("user id is present", function() {
pm.expect(jsonData.data[0].userId).not.equal(null);
});
然而,即使 userId 为 null
,这一切都将通过。是否进一步考虑检查 Postman 测试用例中的空值?
首先,打开控制台和 运行 流动代码段来检查类型:
pm.test("user id is present", function() {
console.log(typeof jsonData.data[0].userId);
console.log(typeof jsonData.data[0]);
console.log(typeof jsonData);
}
如果 undefined
对应 jsonData.data[0].userId
,您需要更改测试以断言 null
和 undefined
:
pm.test("user id is present", function() {
pm.expect(jsonData.data[0].userId).to.exist //check if it is not equal to undefined
pm.expect(jsonData.data[0].userId).to.not.be.null; //if it is not equal to null
}