import http from "k6/http"; import { check } from "k6"; import { SharedArray } from "k6/data"; const url = __ENV.TARGET_URL || "http://localhost:7007/api/image/generate"; const testData = new SharedArray("test requests", function () { return JSON.parse(open("fuzzy.json")); }); export const options = { discardResponseBodies: true, scenarios: { fuzzy_test: { executor: "shared-iterations", vus: 16, iterations: testData.length, maxDuration: "30m", }, }, }; export default function () { const requestBody = testData[__ITER]; if (!requestBody) { return; } const payload = JSON.stringify(requestBody); const params = { headers: { "Content-Type": "application/json", Accept: "image/png", }, timeout: "200s", }; const res = http.post(url, payload, params); check(res, { [`status is 200 (OK)`]: (r) => r.status === 200, [`content-type is image/png`]: (r) => r.headers["Content-Type"] === "image/png", }); }