我正在尝试从汽车对象中获取所有模型的数量,这是 SerenityRest 响应的一部分。
Response response = SerenityRest.rest()
.contentType("application/json")
.when()
.get("/api/");
if (response.statusCode() == 200) {
int numUniqueModels = response.body().path("cars.size()"); // 3
}
回复:
"cars": {
"Acura": [
"ILX",
"MDX",
"TLX"
],
"Audi": [
"A3",
"A4",
"A6",
"A7"
],
"BMW": [
"x",
"y"
]
}
例如,
response.body().path("cars.size()") = 3,
但我需要 cars.Acura.size() + cars.Audi.size() + cars.BMW.size() 的总和来获得所有模型。但是,我不知道响应中是否会出现 Acura、Audi 或 BMW 的确切名称,因为车辆可能会动态变化。为了解决这个问题,我需要做一些循环,其中:
sum = 0;
for (int i = 0; i < response.body().path("cars.size()"); i++) {
sum += response.body().path("cars.[i].size()");
}
总和应该给出汽车模型的总数 = 9。问题是这个语法:path("cars.[i].size()") 不正确。正确的叫法是什么?
RISEBY
相关分类