/* Postman Pre-request Script */
if (!pm.environment.get('requestCount')) {
pm.environment.set('requestCount', 1);
} else {
let count = parseInt(pm.environment.get('requestCount'));
pm.environment.set('requestCount', count + 1);
}
/* Postman Test Script */
const count = parseInt(pm.environment.get('requestCount'));
if (count <= 10) {
pm.test('Status code is 200 for allowed requests', function () {
pm.response.to.have.status(200);
});
} else {
pm.test('Status code is 429 for rate limit exceeded', function () {
pm.response.to.have.status(429);
});
pm.test('Response has rate limit error message', function () {
pm.expect(pm.response.text()).to.include('rate limit');
});
}The Pre-request Script initializes and increments a counter stored in Postman environment variables to track how many requests have been sent.
The Test Script checks the current count. For the first 10 requests, it asserts the response status is 200 OK. For requests beyond 10, it asserts the status is 429 Too Many Requests and verifies the response contains a rate limit error message.
This approach simulates sending multiple requests and validates the API's rate limiting behavior automatically within Postman.