Bird
Raised Fist0
Postmantesting~10 mins

Iteration count in Postman - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to get the current iteration count in Postman.

Postman
let currentIteration = pm.info.[1];
Drag options to blanks, or click blank then click option'
Aiteration
Bcount
Cindex
Dnumber
Attempts:
3 left
💡 Hint
Common Mistakes
Using pm.info.count instead of pm.info.iteration
Using pm.info.index which does not exist
Using pm.info.number which is incorrect
2fill in blank
medium

Complete the code to log the current iteration count in the Postman console.

Postman
console.log('Current iteration:', pm.info.[1]);
Drag options to blanks, or click blank then click option'
Astep
Biteration
Ccount
Dcycle
Attempts:
3 left
💡 Hint
Common Mistakes
Using pm.info.count which is not a valid property
Using pm.info.step or pm.info.cycle which do not exist
3fill in blank
hard

Fix the error in the code to correctly check if the current iteration is the first one.

Postman
if (pm.info.[1] === 0) {
    console.log('First iteration');
}
Drag options to blanks, or click blank then click option'
Acount
Bnumber
Citeration
Dindex
Attempts:
3 left
💡 Hint
Common Mistakes
Using pm.info.count which is undefined
Using pm.info.index which is not a valid property
4fill in blank
hard

Fill both blanks to create a loop that runs for the total number of iterations in Postman.

Postman
for (let i = 0; i < pm.info.[1]; i[2]) {
    console.log('Iteration:', i);
}
Drag options to blanks, or click blank then click option'
Aiterations
Biteration
C++
D--
Attempts:
3 left
💡 Hint
Common Mistakes
Using pm.info.iteration instead of iterations for total iterations
Using i-- which would cause an infinite loop
5fill in blank
hard

Fill all three blanks to store the current iteration, total iterations, and check if it is the last iteration.

Postman
let current = pm.info.[1];
let total = pm.info.[2];
if (current === total - [3]) {
    console.log('Last iteration');
}
Drag options to blanks, or click blank then click option'
Aiteration
Biterations
C1
D0
Attempts:
3 left
💡 Hint
Common Mistakes
Using pm.info.count instead of iterations
Using 0 instead of 1 when subtracting to check last iteration

Practice

(1/5)
1. What does the iterationCount setting in Postman control?
easy
A. The number of requests in a collection
B. The number of times a collection or request runs automatically
C. The number of tests inside a single request
D. The number of environments available

Solution

  1. Step 1: Understand the role of iterationCount

    The iterationCount defines how many times Postman runs the entire collection or request automatically.
  2. Step 2: Differentiate from other counts

    It is not about the number of requests or tests, but how many times the run repeats.
  3. Final Answer:

    The number of times a collection or request runs automatically -> Option B
  4. Quick 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
A. Set iterationCount = 5 in the pre-request script
B. Set environment variable iterationCount to 5
C. Add pm.iterationCount = 5 in the test script
D. Enter 5 in the 'Iterations' field of the Collection Runner UI

Solution

  1. 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.
  2. Step 2: Understand script limitations

    Setting iterationCount in scripts or environment variables does not control the runner's iteration count.
  3. Final Answer:

    Enter 5 in the 'Iterations' field of the Collection Runner UI -> Option D
  4. Quick 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:
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
A. Console logs 0,1,2; last test fails
B. Console logs 1,2,3; last test fails
C. Console logs 0,1,2; all tests pass
D. Console logs 1,2,3; all tests pass

Solution

  1. Step 1: Understand pm.info.iteration values

    Iteration count starts at 0, so for 3 iterations, values are 0, 1, 2.
  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.
  3. Final Answer:

    Console logs 0,1,2; all tests pass -> Option C
  4. Quick 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:
if (pm.info.iterationCount > 3) {
  postman.setNextRequest(null);
}

Why does the collection keep running beyond 3 iterations?
medium
A. pm.info.iterationCount is total iterations, not current iteration index
B. postman.setNextRequest(null) does not stop iterations
C. pm.info.iterationCount is read-only and cannot be used in conditions
D. The script syntax is incorrect and causes error

Solution

  1. Step 1: Understand pm.info.iterationCount meaning

    pm.info.iterationCount is the total number of iterations set, not the current iteration number.
  2. Step 2: Identify correct property for current iteration

    The current iteration index is pm.info.iteration, which starts at 0.
  3. Final Answer:

    pm.info.iterationCount is total iterations, not current iteration index -> Option A
  4. Quick 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
A. if (pm.info.iteration === 2) { postman.setNextRequest(null); }
B. if (pm.info.iteration === 2) { postman.setNextRequest(pm.info.requestName); }
C. if (pm.info.iteration === 2) { postman.setNextRequest('Request1'); }
D. if (pm.info.iteration === 2) { postman.setNextRequest('Request3'); }

Solution

  1. 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.
  2. 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.
  3. Final Answer:

    if (pm.info.iteration === 2) { postman.setNextRequest(null); } -> Option A
  4. Quick 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