Previous Topic: Service ImagesNext Topic: How Conversational Requests are Handled


How Virtualization Works

In the absence of a server, CA Service Virtualization simulates the behavior of the server for its client. This process is known as the virtualization of a server. The process requires loading the service image that a VSM references and running it in the VSE dashboard.

When VSE receives a request, VSE examines the request and tries to match it to an existing conversational state (session) in VSE. For example, a cookie ID or some other session identifier can "tie" requests in stateless protocols such as HTTP. VSE uses the conversational state to determine where in the conversation tree the "current transaction" is, and any other "state" such as a previously submitted authentication token, which may not be part of the current request, but is used in the subsequent response. The user name is an example.

If an existing session cannot be found, the VSE attempts to match the request against the starter transactions of each conversation in the image. If it finds a match, it creates a session and the session returns a relevant response. The session is maintained until two minutes after it has last been "seen" by the VSE. You can change this behavior with the lisa.vse.session.timeout.ms property. If no conversation starters match, no session is created and the list of stateless transactions is consulted in the order in which they are defined. If there is a match, the appropriate response is returned. If there is still no match, the "unknown request" response is sent.

When VSE finds a previous session and VSE is in a conversation, the next transaction match depends on many factors. Those factors can include navigation and match tolerances.

If VSE does not find a matching transaction in the conversational and stateless transactions, it consults the service image again for the type of response to send for an unmatched conversational or stateless request.

More information:

How Conversational Requests are Handled