POSTMAN - 如何检查响应主体的值 > 0
POSTMAN - how to check response body for a value > 0
我是邮递员的新手,正在努力寻找以下问题的答案
我查询 returns 数据如下:
{
"dailyProcessing":{
"2020-10-01":{
"Database":{
"list0":0,
"list1":0,
"list2":300,
"list3":0,
"list4":0
}
},
"2020-10-02":{
"Database":{
"list0":0,
"list1":0,
"list2":0,
"list3":0,
"list4":400
}
}
}
}
我需要编写一个测试来检查其中一个值 returns 是一个大于 0 的数字,但我不确定格式应该是什么。
使用的列表将是随机的,因此它不能特定于一个列表,但总会有一个被使用,如果我们在响应中没有看到大于 0 的值,我们需要标记为它将识别处理问题
我的知识不多,所以尝试过像
pm.expect(pm.response.text()).to.include
但我似乎没有得到我需要的结果
抱歉,如果这是一件非常简单的事情,我还没有足够的知识来知道我正在尝试做的到底是什么(即术语)
提前致谢
希望这段代码对你有帮助,把它放在测试选项卡中
它将遍历每个属性,导航到数据库 属性,然后循环遍历每个列表项。
它将对所有可用项执行此操作,直到满足条件,条件是列表项值 > 0。
一旦满足条件,它就会从两个循环中跳出,然后断言满足的条件为真。
如果所有值都为 0 并且循环完成,则条件不满足,测试将失败。
var dailyProcessing = JSON.parse(responseBody);
var conditionMet = false;
for (var key in dailyProcessing)
{
console.log(Object.keys(dailyProcessing).length)
console.log(key)
for(var item in dailyProcessing[key].Database)
{
if(dailyProcessing[key].Database[item] > 0){
conditionMet = true;
break;
}
}
if(conditionMet){
break;
}
}
pm.test("Condition is met", function() {
pm.expect(conditionMet).to.be.true;
});
我是邮递员的新手,正在努力寻找以下问题的答案
我查询 returns 数据如下:
{
"dailyProcessing":{
"2020-10-01":{
"Database":{
"list0":0,
"list1":0,
"list2":300,
"list3":0,
"list4":0
}
},
"2020-10-02":{
"Database":{
"list0":0,
"list1":0,
"list2":0,
"list3":0,
"list4":400
}
}
}
}
我需要编写一个测试来检查其中一个值 returns 是一个大于 0 的数字,但我不确定格式应该是什么。
使用的列表将是随机的,因此它不能特定于一个列表,但总会有一个被使用,如果我们在响应中没有看到大于 0 的值,我们需要标记为它将识别处理问题
我的知识不多,所以尝试过像
pm.expect(pm.response.text()).to.include
但我似乎没有得到我需要的结果
抱歉,如果这是一件非常简单的事情,我还没有足够的知识来知道我正在尝试做的到底是什么(即术语)
提前致谢
希望这段代码对你有帮助,把它放在测试选项卡中
它将遍历每个属性,导航到数据库 属性,然后循环遍历每个列表项。
它将对所有可用项执行此操作,直到满足条件,条件是列表项值 > 0。
一旦满足条件,它就会从两个循环中跳出,然后断言满足的条件为真。
如果所有值都为 0 并且循环完成,则条件不满足,测试将失败。
var dailyProcessing = JSON.parse(responseBody);
var conditionMet = false;
for (var key in dailyProcessing)
{
console.log(Object.keys(dailyProcessing).length)
console.log(key)
for(var item in dailyProcessing[key].Database)
{
if(dailyProcessing[key].Database[item] > 0){
conditionMet = true;
break;
}
}
if(conditionMet){
break;
}
}
pm.test("Condition is met", function() {
pm.expect(conditionMet).to.be.true;
});