HP LoadRunner Protocol SDK Overview > How Protocols Work Within a Test Run |
When a Vuser script is run, the LoadRunner run-time execution component reads the protocol configuration files of the protocols used by the script. It then loads the protocol DLLs and the client application DLLs as required.
The script is a series of API function calls. Each function invocation in a script is called a step. When each step in the script is read, LoadRunner calls that function in the DLL of the appropriate protocol, passing the arguments from the script. A script step can also be a C language function invocation, including a C language statement that calls API functions of other protocols.
The protocol function makes the calls to execute the step as though the client application were running. The calls are either made directly or through client application and communication DLLs, depending on the protocol implementation.
Generally, either the client application is not loaded or only a subset of the client application is loaded. Therefore, the resources required to run a Vuser are less than those required by the client in normal use. This smaller resource footprint makes load testing possible by allowing LoadRunner to execute many instances of a Vuser with much less computer resource use than would be required to run that number of instances of the client application.
The result of this process is that the server application responds to each Vuser as though it were an instance of the client application, and LoadRunner retains the information needed for evaluation and test analysis.
The following diagram illustrates a possible configuration of a protocol using a subset of the client application: