If you can't, or just don't want to, deploy message proxies (the recommended approach; discussed in Recording Traffic from Message Proxies), you can record HTTP, JMS, and MQ traffic "on the fly" with the recording proxy. Like message proxies, these proxies can concurrently capture live HTTP, JMS, and MQ traffic that passes through multiple endpoints.
The recording proxy can monitor traffic over the specified transport(s) as an application is exercised. Virtualize "listens" to traffic requests and responses, then builds a traffic file of legitimate request/response pairs. This traffic is then used to generate and deploy a virtual asset that virtualizes the captured behavior (returning virtualized responses that correlate to the incoming request messages based on the traffic captured).
JMS, MQ, HTTP, HTTPS (SSL), Basic, Digest, and Kerberos authentication are supported; NTLM is not.
HTTP chunking and continue headers are not supported.
There are three main steps involved in virtualizing this application behavior:
To simultaneously capture live traffic across one or more endpoints:
Overwrite session data overwrites the traffic data in an existing traffic file (the one specified in the Traffic file field). If the specified file does not already exist, a new file will be created.
When live traffic is being captured, you can switch between the available tabs to view the requests and responses at each endpoint. The following screenshots show traffic being concurrently captured at three different endpoints.
Once you have recorded traffic, you can create and deploy virtual assets as follows:
This section explains how to configure recording proxies for HTTP. This is different than the HTTP configuration for deployable message proxies (which is discussed in HTTP Reverse Proxy Configuration). It covers:
Note that HTTP, HTTPS (SSL), Basic, Digest, and Kerberos authentication are supported; NTLM is not.
In the recording proxy wizard (as opposed to deployed message proxies), you specify your HTTP settings as follows:
Due to the nature of SSL, Virtualize's proxy for HTTP recording generates a dynamic server certificate signed by its own certificate authority. In order to accept this dynamic server certificate, the client generating the requests over HTTPS will need to be set up to trust all certificates. To do this:
Due to the nature of SSL, Virtualize's proxy for HTTP recording generates a dynamic server certificate signed by its own certificate authority. In order to accept this dynamic server certificate, the client generating the requests over HTTPS will need to be set up to trust all certificates. To do this:
To generate a traffic file that captures HTTPS traffic from a service that uses server-side or two-way SSL, complete the wizard as described in Capturing the Traffic (above).
In the HTTP wizard page, be sure to enable the appropriate SSL option:
To configure your application under test to access the virtual asset that will represent this recorded traffic:
realapp.parasoft.com:80
and your proxy is running on mymachine.parasoft.com:44
(as specified in the wizard). You would point your client app at mymachine.parasoft.com:44
instead of realapp.parasoft.com:80
, thus forcing the traffic to go through the proxy.mymachine.parasoft.com:44
as the proxy in the browser. This will redirect the traffic to the recording wizard proxy, and the traffic will get recorded.If the app requires digest authentication, do not set the proxy in the browser; instead, modify the URL that the browser is pointing to. In other words, instead of using http://realapp.parasoft.com/mypage.html
, use http://mymachine.parasoft.com:44/mypage.html
. This will cause the traffic to get routed through the recording proxy.