I have an array og JSON object in my response body and want to run check on each of the JSON object. Will something like this work in check ? or i have to loop the array and have checks inside the loop ?
success = check(res, {
"id contains:": (r) => {
var arr = JSON.parse(r.body);
arr.forEach(element => {
element.id == "test";
});
}
});
1 Like
Hi @jeevananthank
import http from "k6/http";
import { check } from "k6";
export default function() {
var url = "https://httpbin.test.loadimpact.com/json"
var res = http.get(url);
check(res, {
"id contains:": (r) => {
var arr = r.json("slideshow.slides");
return arr.every(element => {
console.log(JSON.stringify(element));
console.log(JSON.stringify(element.type));
return element.type == "all"
});
}
});
}
In this case, I need to get an array from the json response I have. So you will need to change it, but you need to use every
and you probably will need response.json() without a selector if your json is just an array.
2 Likes