目前,我遇到了一个小问题。 我有一个目标:测试计数器(计算数字的功能)以检查此计数器返回的数字低于设置范围的低和高(+ -5%偏差)
现在,我有这段代码:
var allLists = JSON.parse(responseBody);
var min = pm.variables.get("count"); // I separately extract min
var max = pm.variables.get("count1"); // and max, but want to extract one variable with min and max;
var low = parseInt(min)
var high = parseInt(max);
console.log("::MIN_VALIE: " + low + " | " + "::MAX_VALUE: " + high);
pm.test("test count", function () {
const value = allLists.data.count;
console.log(":::::::::=> COUNTER: " + value);
pm.expect(typeof value).to.eql('number');
pm.expect(value > low && value < high).to.eql(true);
});
它运作正常,但我相信这段代码很笨重 为了比较低和高范围内的值,我必须在集合变量中保持低和高数字,在期望的50个变量中,使得100个变量和真正的混乱。
我可以以某种方式为集合变量中的低和高值保留一个变量吗?
更新 发布后立即提出:
var allLists = JSON.parse(responseBody);
var num = pm.variables.get("count").split(',');
var min = parseInt(num[0]);
var max = parseInt(num[1]);
console.log("::MIN_VALIE: " + min + " | " + "::MAX_VALUE: " + max);
pm.test("test count", function () {
const value = allLists.data.count;
console.log(":::::::::=> COUNTER: " + value);
pm.expect(typeof value).to.eql('number');
pm.expect(15 > min && 15 < max).to.eql(true);
});
它好多了,但也许存在更好的方式
答案 0 :(得分:0)
使用JSON.parse解决它。在集合变量中,范围记为In Collection Varibles: overall_count:[1,99]格式,我想拥有。
var allLists = JSON.parse(responseBody);
// Here I parse this variable and make parse int to get integer and hurray, I have 1 variable instead of 2
const num = JSON.parse(pm.variables.get("overall_count")); //resolved it with JSON parsing
var min = parseInt(num[0]);
var max = parseInt(num[1]);
pm.test("test count", function () {
const value = allLists.data.count;
pm.expect(typeof value).to.eql('number');
pm.expect(15 > min && 15 < max).to.eql(true);
});