Understanding step events
A TruClient step contains an action, and for application related steps, additional activity. The following diagram illustrates the sequence of events triggered as a result of step execution.
What is an End Event?
TruClient scripts are asynchronous which means steps do not have to wait for previous steps to complete before they start. Each step has an event flow and the End Event defines the point at which subsequent steps are allowed to start. During script replay, TruClient will determine each step's end event. For details see, How to Synchronize TruClient Scripts Steps.
A step can be thought of as a container including an action and additional application activity. Each step execution differs and may go through a different event flow. The following examples illustrate how step execution can differ:
Example 1: Getting parameters using EvaluateJS step
The step includes an Evaluate JS step with
TC.getParam("Name"); code. In this step there is no application related activity. Therefore, the end event is automatically set to Action completed. The remaining events in the chain are not relevant.
Example 2: Click on a simple search box (no auto-suggest)
This step interacts with the application but it does not trigger any network or DOM activity. Therefore, the end event is automatically set to Action completed. The remaining events in the chain are not relevant.
Example 3: Click on a search button
This step interacts with the application and triggers both network and DOM activity. Therefore, the end event is automatically set to one of the events that follows Action completed. The event selected depends upon the specific application behavior.
When to manually change step end events
The next step is not ready to be executed because the preceding end event is incorrect. For details, see How to Synchronize TruClient Scripts Steps.
You have created a transaction that surrounds several steps. You are interested in measuring a certain aspect of the transaction more accurately. For details, see Insert transactions into a TruClient script.