For a list of protocols that support asynchronous communication, see Protocol Support for Async, IPv6, and 64-bit Recording.
Web-based applications can exhibit synchronous behavior, asynchronous behavior, or a combination of both. For an introduction to these behavior types, see Synchronous and Asynchronous Concepts. VuGen enables you to build and run Vuser scripts that emulate user activity for both synchronous and asynchronous applications. To build a Vuser script for a synchronous application, follow the typical Vuser script building process. However, to build a script for an asynchronous application, you must perform some additional tasks - beyond the typical Vuser script building process. If you record and generate a script for an application that performs asynchronous behavior - without performing the additional asynchronous-related tasks, the script may not run successfully.
Building a Vuser script for an asynchronous application begins with recording the business processes that produce the asynchronous communication. After the business processes are recorded and the Vuser script is generated, VuGen scans the generated Vuser script and attempts to locate the asynchronous communication. If asynchronous communication is detected, VuGen modifies the script - inserting the appropriate asynchronous API functions.
To enable VuGen to successfully identify the asynchronous behavior in a Vuser script, the asynchronous communication must contain at least the required minimum number of request and response sequences.
To identify a poll-type conversation, the recorded Vuser script must contain at least three sequences with matching URLs and similar polling intervals.
To identify a long-poll-type conversation, the recorded Vuser script must contain at least three sequences with matching URLs.
In addition, the Async Scan recording option must be selected. For details, see Create an Asynchronous Vuser Script.
In some scenarios, the modifications that VuGen makes to the Vuser script are sufficient to enable the script to run and emulate the required asynchronous behavior. In other scenarios, additional "manual" modifications are required. For details, see How VuGen Modifies a Vuser Script for Asynchronous Communication.
Note: The modifications that must be made to a generated Vuser script to enable the script to emulate asynchronous behavior are dependent on the type of the asynchronous behavior: push, polling, or long-polling. For details, see Asynchronous Communication Types - Request and Response Sequences.
Asynchronous communication in a Vuser script is divided into one or more conversations. The individual asynchronous conversations that VuGen detects in a Vuser script are listed in the Async tab of the Design Studio. Use this list of asynchronous conversations to systematically analyze the modifications that VuGen made to the Vuser script to make sure that VuGen has correctly identified the asynchronous behavior, and correctly modified the Vuser script to emulate the required asynchronous behavior. For details on the Async tab of the Design Studio, see Async Tab [Design Studio].
After modifying a Vuser script to enable it to emulate asynchronous communication, it may be necessary to perform correlation activities on the modified script. For details about correlation, see Correlating Asynchronous Vuser Scripts.
Note: Async functionality is not supported when you replay a Vuser script in WinINet mode.
For details on how to build a Vuser script for an application that utilizes asynchronous communication, see Create an Asynchronous Vuser Script.