gpt4 book ai didi

postman - 如何检查响应正文的值 > 0

转载 作者:行者123 更新时间:2023-12-04 08:47:00 24 4
gpt4 key购买 nike

我对 postman 相当陌生,正在努力寻找以下问题的答案
我有一个查询返回如下数据:

{
"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
}
}
}
}
我需要编写一个测试来检查这些值之一返回的数字是否大于 0 并且不确定格式应该是什么。
使用的列表将是随机的,所以它不能特定于一个列表,但总会有一个被使用,如果我们在响应中没有看到大于 0 的值,我们需要标记,因为它会识别一个问题有加工
我有少量的知识,所以尝试把东西放在一起,比如
pm.expect(pm.response.text()).to.include
但我似乎没有得到我需要的结果
抱歉,如果这是一件非常简单的事情,我还不知道我想要做什么(即术语)
提前致谢

最佳答案

希望此代码对您有所帮助,请将其放在“测试”选项卡中
它将遍历每个属性,导航到 Database 属性,然后遍历每个列表项。
它将对所有可用项执行此操作,直到满足条件为止,条件是列表项值 > 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;
});

关于 postman - 如何检查响应正文的值 > 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64265135/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com