Iteration count tells how many times a test runs in a loop. It helps test many cases without repeating code.
Iteration count in Postman
Start learning this pattern below
Jump into concepts and practice - no test required
or
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Introduction
Syntax
Postman
pm.info.iteration
This is a read-only variable in Postman scripts.
It starts from 0 for the first iteration and increases by 1 each time.
Examples
Postman
console.log(pm.info.iteration);
Postman
if (pm.info.iteration === 0) { console.log('First run'); } else { console.log('Run number ' + pm.info.iteration); }
Sample Program
This test checks that the iteration count is a number and not negative. It also prints the current iteration number.
Postman
pm.test('Check iteration count', function () { pm.expect(pm.info.iteration).to.be.a('number'); pm.expect(pm.info.iteration).to.be.at.least(0); }); console.log(`Current iteration: ${pm.info.iteration}`);
Important Notes
Iteration count starts at 0, so the first run is iteration 0.
You can use iteration count to pick data from an array for data-driven testing.
Remember to set the number of iterations in the Postman Collection Runner before running tests.
Summary
Iteration count helps run tests multiple times automatically.
It starts at zero and increases by one each run.
Use it to test different data or repeated calls easily.
Practice
1. What does the
iterationCount setting in Postman control?easy
Solution
Step 1: Understand the role of iterationCount
The iterationCount defines how many times Postman runs the entire collection or request automatically.Step 2: Differentiate from other counts
It is not about the number of requests or tests, but how many times the run repeats.Final Answer:
The number of times a collection or request runs automatically -> Option BQuick Check:
iterationCount = run times [OK]
Hint: iterationCount means how many times to run tests [OK]
Common Mistakes:
- Confusing iterationCount with number of requests
- Thinking iterationCount counts tests inside a request
- Mixing iterationCount with environment count
2. Which of the following is the correct way to set iteration count to 5 in Postman Collection Runner?
easy
Solution
Step 1: Identify how to set iteration count in Postman UI
The Collection Runner has an 'Iterations' input field where you specify how many times to run.Step 2: Understand script limitations
Setting iterationCount in scripts or environment variables does not control the runner's iteration count.Final Answer:
Enter 5 in the 'Iterations' field of the Collection Runner UI -> Option DQuick Check:
Use Collection Runner UI to set iterations [OK]
Hint: Set iterations number in Collection Runner UI field [OK]
Common Mistakes:
- Trying to set iterationCount in scripts
- Confusing environment variables with runner settings
- Assuming iterationCount is a pm API property
3. Consider this test script in Postman run with iterationCount = 3:
What will be the console output and test result for each iteration?
console.log(pm.info.iteration);
pm.test('Check iteration', () => {
pm.expect(pm.info.iteration).to.be.below(3);
});What will be the console output and test result for each iteration?
medium
Solution
Step 1: Understand pm.info.iteration values
Iteration count starts at 0, so for 3 iterations, values are 0, 1, 2.Step 2: Check test condition pm.expect(pm.info.iteration).to.be.below(3)
All iteration values (0,1,2) are less than 3, so all tests pass.Final Answer:
Console logs 0,1,2; all tests pass -> Option CQuick Check:
Iteration index starts at 0 and is below count [OK]
Hint: Iteration index starts at 0, less than iterationCount [OK]
Common Mistakes:
- Assuming iteration starts at 1
- Expecting iteration to equal iterationCount
- Confusing iterationCount with max iteration index
4. You wrote this pre-request script to stop running after 3 iterations:
Why does the collection keep running beyond 3 iterations?
if (pm.info.iterationCount > 3) {
postman.setNextRequest(null);
}Why does the collection keep running beyond 3 iterations?
medium
Solution
Step 1: Understand pm.info.iterationCount meaning
pm.info.iterationCount is the total number of iterations set, not the current iteration number.Step 2: Identify correct property for current iteration
The current iteration index is pm.info.iteration, which starts at 0.Final Answer:
pm.info.iterationCount is total iterations, not current iteration index -> Option AQuick Check:
Use pm.info.iteration to check current iteration [OK]
Hint: Use pm.info.iteration for current run, not iterationCount [OK]
Common Mistakes:
- Confusing iterationCount with iteration index
- Expecting setNextRequest(null) to stop all iterations
- Using wrong property names in conditions
5. You want to run a Postman collection 4 times, but skip iteration 2 (zero-based). Which script in the pre-request script will achieve this?
hard
Solution
Step 1: Identify how to skip an iteration
To skip iteration 2, we stop the run at that iteration by setting next request to null.Step 2: Use correct condition and method
Check if current iteration is 2, then call postman.setNextRequest(null) to stop further requests in that iteration.Final Answer:
if (pm.info.iteration === 2) { postman.setNextRequest(null); } -> Option AQuick Check:
Set next request null to skip iteration [OK]
Hint: Use setNextRequest(null) on iteration to skip it [OK]
Common Mistakes:
- Setting next request to current or wrong request name
- Confusing iteration index with iterationCount
- Not stopping requests properly to skip iteration
