33 lines
947 B
JavaScript
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();
|
|
},
|
|
};
|