Files
Artillery/processor.js
T
2026-05-13 15:11:35 +08:00

33 lines
947 B
JavaScript

let requestCount = 0;
let startTime = Date.now();
module.exports = {
setup: function (context, ee, next) {
console.log("🚀 Test started\n");
ee.on(
"response",
function (latency, statusCode, requestParams, response, startTime) {
requestCount++;
const elapsedSeconds = (Date.now() - startTime) / 1000;
const reqPerSec = (requestCount / elapsedSeconds).toFixed(2);
console.log(
`[${new Date().toLocaleTimeString()}] Requests sent: ${requestCount} | Rate: ${reqPerSec} req/s | Status: ${statusCode}`,
);
},
);
return next();
},
cleanup: function (context, ee, next) {
const totalTime = (Date.now() - startTime) / 1000;
const avgRate = (requestCount / totalTime).toFixed(2);
console.log(`\n✅ Test completed`);
console.log(`Total requests: ${requestCount}`);
console.log(`Average rate: ${avgRate} req/s`);
return next();
},
};