我对此对象companies[0].salesReps
的json响应显示4个值(图像显示3个)
如何验证邮递员测试销售员工总数,并在控制台上打印他们的姓名。
x.companies[0].salesReps[0].name
x.companies[0].salesReps[1].name
x.companies[0].salesReps[2].name
尝试说未定义
emp = JSON.parse(responseBody(companies[0].salesReps));
var listcnt = emp.length;
console.log(listcnt)
任何遗漏的东西:)谢谢
答案 0 :(得分:1)
不确定响应主体的结构,但这应该可以做到。 发布完整的回复正文后,我们很乐意对其进行调整。
const resBody = pm.response.json();
const numberOfSalesEmployees = resBody.companies[0].salesReps.length;
console.log("Number of sales employees:" + numberOfSalesEmployees);
for (var i = 0; i < numberOfSalesEmployees; i++){
console.log("Name of sales rep " + i + ": " + resBody.companies[0].salesReps[i].name);
}
pm.test("Number of sales employees is 4", function () {
pm.expect(numberOfSalesEmployees).to.eql(4);
});
答案 1 :(得分:0)
任何主意,这是怎么回事
CheckServerStatus
感谢您共享信息,该信息显示为未定义。但是想通了:)
pm.expect(Object.keys(pm.response.json(jsonData.companies[0].salesReps)).length).to.eql(3);
-----output--
getting AssertionError: expected [ Array(4) ] to be true
给我4 以及如何打印所有销售员工姓名 现在如果有这个值怎么打印所有名字?我也在我这边做
var parsedBody = JSON.parse(responseBody);
var listcnt = (parsedBody.companies[0].salesReps).length;
console.log(listcnt)
答案 2 :(得分:-1)
我认为最好先解析responseBody(在尝试访问响应中的数据之前),所以:
var parsedResponseBody = JSON.parse(responseBody);
var listCnt = parsedResponseBody.companies[0].salesReps.length;