- Schedule overview
A schedule is the "engine" that runs a test. However, schedules are much more than simple vehicles for running tests. You can design or emulate the real-life workload by creating various groups and dividing the load across different remote agents that generate load on the application under test. A schedule can be as simple as one virtual user or one iteration running one test, or as complicated as hundreds of virtual users or iteration rates in different groups, each running different tests at different times.
- Creating a VU Schedule
You can create a VU Schedule to accurately emulate the actions of individual users.
- Creating a Rate Schedule
By creating a Rate Schedule, you can model the different behaviors of how the application is accessed and measure the rate accuracy.
- Using Application Performance Management in a schedule
You can use Application Performance Management (APM) in a schedule to enable AppDynamics or Dynatrace applications and enhance the data collection during load testing by adding HTTP headers to the request in your HTTP tests. You can also use APM to monitor the performance of applications.
- Think time overview
Think time is a delay in the processing of a request to reproduce the time that a human would take to read or examine the data that is displayed from a previous user action. Think time is calculated from the time that a request is received (that is, the display is complete on the monitor) until the time that the user clicks a key or link to perform an action.
- Working with agents
If you have a significant workload to test, typically a single computer might not be able to process the load efficiently. You need to distribute the load across multiple computers, also called HCL DevOps Test Performance (Test Performance) agents. The agents are installed on computers to generate the load on the application.
- Adding a test to a schedule
By adding a test to a schedule, in this context, is used to refer to VU Schedule and Rate Schedule, you can emulate the action of an individual user.
- Adding must run tests
In a schedule, you can use the Finally block to specify tests that must be run after the main workload is completed, when the last stage duration is expired, or a schedule is stopped manually.
- Assigning variables to schedule and groups
In addition to assigning variables at the test level, you can assign variables at the schedule, in this context, is used to refer to VU Schedule and Rate Schedule level and User or Rate Runner group level. When you assign variables at the schedule level, all the tests and groups in the schedule can use the variable initial values, if they have the same variable names.
- Defining requirements in schedules
You can define performance requirements to specify the acceptable thresholds for the performance parameters in a schedule. The performance requirements that you define can also be used to validate the service-level agreements.
- Repeating tests in a schedule
By adding a loop to a schedule, in this context, is used to refer to VU Schedule and Rate Schedule, you can repeat a test for a number of iterations and set the rate for running a test. If the loop contains a synchronization point, the synchronization point is released after the first iteration of the loop and stays released for all further iterations.
- Creating rate generators in user groups
A rate generator is a workload container that specifies the number of tasks that the virtual testers run in a given time period. For example, you might be testing an Order Entry group that completes 10 forms every hour, or you might be testing a web server that you want to be able to support 100 hits every minute. Use a rate generator to model this time-based behavior.
- Running tests at a set rate
To run a test at a set rate, you add a loop to the schedule to control the iteration rate, and then add tests to the loop. The tests, which are children of the loop, are controlled by the loop. If the loop contains a synchronization point, the synchronization point is released after the first iteration of the loop and stays released for all further iterations.
- Running tests in random order
A schedule that contains only user groups and tests will run each test in a user group sequentially. By adding a random selector to a schedule, you can repeat a series of tests in random order, thus emulating the varied actions of real users.
- Adding a transaction to a schedule
A transaction is a specific group of test elements whose performance you are interested in. When viewing the test results, you can view performance data about any transactions that you have added.
- Emulating network traffic from multiple hosts
By default, when you run a schedule, each virtual user has the same IP address. However, you can make each virtual user appear as though it is running on its own host. To do this, you configure IP aliases on the host computer, and enable IP aliasing in the schedule. When you run the schedule, the network traffic will appear to be generated by multiple hosts.
- Monitoring resource data
Resource Monitoring is used to capture data, such as processor or memory usage, while running a test schedule. It can provide a comprehensive view of a system under test, to help identify issues. You can monitor data sources from a local or cloud schedule, or from a Service.
- Resource Monitoring Service
When you apply load to a system under test, the system's resources are consumed increasingly. If the capacity of the resources does not match the load, you will notice performance degradation in the results. With the Resource Monitoring Service, you can continually observe the health of the system's resources.
- Monitoring response time breakdown
You can use response time breakdown to see statistics on any page element that is captured while running a test schedule or imported from historical data.
- Setting log and statistic levels
Within a schedule, you set the size and sampling rate of the test log and the problem determination log, as well as the statistics that are displayed during a run.