Recording HTTP and HTTPS traffic
Use the HTTP proxy in the HCL Quality Server to record all HTTP and HTTPS traffic that is routed through the proxy.
Before you begin
- Decide whether to record by using an external HTTP proxy or by
using the packet capture method.
- Although packet capture is simpler than using an external proxy server, the method involves a number of limitations. See Limitations of packet capture.
- The HTTP proxy in the HCL Quality Server can route and proxy HTTP, HTTPS, and TCP traffic. For information about deploying the HTTP proxy, see HTTP/TCP proxy setup.
- If you are using an external HTTP proxy, install the HTTP proxy and configure it to record HTTP and HTTPS traffic.
- In HCL Quality Server, ensure that the proxy is shown for the correct domains in the server. If the proxy does not appear with the correct domain, review the configuration information in the registration.xml file for the proxy. In particular, the URL of the server should be correct, and the domain and environment elements should correctly reflect the domains and environments where the proxy is to be registered. For more information, see Modifying the configuration settings of the HTTP/TCP proxy.
- If you must differentiate between multiple web services over a single URL, set up a filter for each service. See Filtering header values.
If your system under test has an HTTP connection, several methods are available to create the logical HTTP connection, physical web server resource, and other test resources. For more information, see Options for creating test resources.
About this task
The following diagram shows an example network configuration. In it, the HCL OneTest™ API HTTP proxy, in recording mode, is acting as an intermediary that enables HTTP messages to appear in the Recording Studio perspective. The proxy is also passing messages back and forth between the original client and server applications.
The port numbers that are
specified in the diagram are default port numbers.
Note: The recording of HTTP or HTTPS traffic is not supported for WebSockets. While HTTP traffic is
allowed through non-secure WebSockets, the HTTPS traffic is not allowed through non-secure
WebSockets. Both HTTP and HTTPS traffic are not allowed to pass through secure WebSockets.
Procedure
To use HCL OneTest™ API to record HTTP or HTTPS traffic:
- Configure the system under test if you are using an external HTTP proxy so that it sends its HTTP(S) traffic through the proxy.
-
Create a logical HTTP connection.
In some cases, HCL OneTest™ API creates a physical web server resource automatically when you create the logical resource.
-
If necessary, create a physical web server resource.
On the Recording page, set the Recording Mode field to External Proxy Server (the default) or Packet Capture.
- In Recording Studio, create an event monitor. The most common method is to monitor an operation that uses HTTP, although you can also monitor the logical HTTP transport itself.
- In the Monitor Configuration window, select the monitor for the HTTP transport or a related operation.
- Optional:
Change the Host Filter settings.
Note: The monitor records traffic only for the host that is specified in the web server transport settings, which is the default behavior and the Host Filter is set to On in the Event Monitor Properties panel. If the Host Filter is set to Off, the monitor records traffic for all hosts.
- Click the Start Recording icon to start recording.
Results
What to do next
- After you have recorded events, Recording Studio attempts to determine the schema to apply to the message. To change this schema, see Events view. To extract parameters from the URL, use a Web URL schema, as described in Creating a Web URL schema.
- After you finish recording, you can highlight one or more individual events. Click Save Events to create resources such as tests, stubs, and test data sets. For more information, see Creating an operation from recorded events, Creating tests from recorded events, and the Stub creation by using the Recording Studio for creating stubs.