What Are Virtual Users
The virtual user term in ReadyAPI refers to a thread that executes functional test cases. The size of a thread pool available to ReadyAPI is determined by the Max number of internal threads option. Also, you cannot simulate more users than your license supports.
The simulated test case is called a Target. A single user can work with multiple targets one after another. You can also create target loops to create additional execution rules.
When the load test ends, ReadyAPI continues to simulate virtual users until they complete their tests, so sometimes it may take additional time to process the remaining users. If this happens, ReadyAPI offers you to discard ongoing tests and stop the simulation.
Load Simulation Types
ReadyAPI can simulate load in two ways:
-
VUs load simulation mimics the constant number of users that work with the server.
During the test run, ReadyAPI constantly tracks the number of simulated users. After they finish the test, ReadyAPI waits until the Wait Time specified in the load profile parameters passes. Then, it checks how many users the current load profile requires. If additional users are needed, it restarts the user.
-
Rate load simulation mimics users arriving to the server. ReadyAPI does not track whether the previous user execution was completed and adds new ones as the load profile demands.
You can find more information about how ReadyAPI handles different load types in the Load Type topic.
Queued and Discarded Virtual Users
Simulating every request requires a certain amount of processing power. The specific amount depends on many factors, such as the size of the request, or the assertions you use. If ReadyAPI runs out of resources or if it needs to create more users than the maximum number of threads supported is, it will start putting the virtual users in the queue until it can execute them.
Tip: | Use distributed tests to generate more load than one computer can handle. |
The maximum number of virtual users in the queue is controlled by the Max size of the internal thread queue option. If the queue is full, users are discarded.
See Also
Load Testing in ReadyAPI
ReadyAPI Performance Licenses
Memory Management