Sometimes when tests execute multiple iterations, it is desirable to request a page only once (in the beginning or at the end) to perform initial or final actions. For instance, in a test case a user logs in, performs some actions, and logs out. During the test run, you want every VU to login only on the first iteration and logout only on the last iteration, while other pages should be repeated multiple times.
You can also apply this to a transaction level to request a transaction at a certain point in the test.
Use the When to Request the Page property to configure such tests. Set this property to On 1-st Iteration on the login page and to On Last iteration on the logout page.
The table below shows how to use this property.
|When to Request the Page|
|On All iterations||(Default) The page or transaction and all its requests will be sent in all VU's iterations.|
|On 1-st iteration||The page or transaction and all its requests will be sent only in the first iteration. This is used for a log-in type page.|
|On Last iteration||The page or transaction and all its requests will be sent only in the last iteration. This is used for a log-out type page.|
|Disabled||The page or transaction is disabled and all its requests will not be sent.|
Actions executed on the 1st iteration create a certain state that must be carried over throughout the entire test. For example, the log-in process on the 1st iteration generates a session ID that should persist throughout the test. To satisfy this requirement, in the test case property, set the VU restarting browsers % to 0. For more information see Test Case: Session Persistence.
- If you are running the log-out process on the last iteration only (as in the example above) and your test completion condition is not Number of iterations, then you must set After the completion condition is reached property to Wait for iterations to complete. For more see Run duration