fix(load): send the exact assessment request count
This commit is contained in:
@@ -6,17 +6,15 @@ import exec from 'k6/execution';
|
||||
|
||||
const API_URL = __ENV.API_URL || 'http://localhost:8000/api/v1/cdr/raw';
|
||||
const PROFILE = (__ENV.PROFILE || 'assessment').toLowerCase();
|
||||
const P95_MS = Number(__ENV.P95_MS || 50);
|
||||
const P95_MS = __ENV.P95_MS ? Number(__ENV.P95_MS) : null;
|
||||
|
||||
// Assessment profile directly models the required scenario:
|
||||
// 500 records in <5s. 125 iterations/s for 4 seconds schedules exactly 500 iterations.
|
||||
const assessmentScenario = {
|
||||
executor: 'constant-arrival-rate',
|
||||
rate: 125,
|
||||
timeUnit: '1s',
|
||||
duration: '4s',
|
||||
preAllocatedVUs: 50,
|
||||
maxVUs: 250,
|
||||
executor: 'shared-iterations',
|
||||
vus: 50,
|
||||
iterations: 500,
|
||||
maxDuration: '5s',
|
||||
gracefulStop: '5s',
|
||||
};
|
||||
|
||||
@@ -50,9 +48,10 @@ export const options = {
|
||||
assessment_completion_ms: ['max<5000'],
|
||||
} : {}),
|
||||
|
||||
// This is a project performance guardrail, not an assessment requirement.
|
||||
// Override it with P95_MS=100 (etc.) if you want a different SLA.
|
||||
http_req_duration: [`p(95)<${P95_MS}`],
|
||||
// Optional project performance guardrail; the assessment defines no p95 SLA.
|
||||
...(Number.isFinite(P95_MS) && P95_MS > 0 ? {
|
||||
http_req_duration: [`p(95)<${P95_MS}`],
|
||||
} : {}),
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user