Recording a socket API performance test

You can record a socket API test from any client program on your computer. When you record, the recording wizard automatically starts the client program and records all the data that transits through the socket API.

Before you begin

Tests are stored in performance test projects. If your workspace does not contain a performance test project, the test creation wizard creates one with a name that you can change. To store a test in a specific project, verify that the project exists before you record the test.

Ensure that you have a working client program and that you can connect to the server.

Ensure that the session that you are recording is reproducible. This means that when the recorded actions are replayed by the test, the same responses from the server will be received.

HCL OneTest Performance does not support socket recording in the 64 bit versions of Microsoft Windows 2003 and Windows XP. Also, you cannot record 64 bit applications on 64 bit Windows 10 and Windows 2016 systems.

Procedure

To record a socket test:
  1. In the Performance Test perspective, click the New Test from Recording toolbar button New Test from Recording toolbar button or click File > New > Test from Recording.
  2. In the New Test from Recording wizard, click Create a test from a new recording, select Socket Test, and click Next.
    If you are recording sensitive data, you can make a selection in Recording encryption level.
  3. On the Select Location page, select the project and folder to create the test in, type a name for the test, and click Next.
    If necessary, click Create Parent Folder Create Parent Folder icon to create a new project or folder.
  4. On the Select Client Application page, select the type of client program to use to record the test:
    • To specify any client program that is located on your computer, select Managed Application, and click Next.

      On the Managed Application Options page, click Browse to specify the Program path. If necessary, specify the Working directory, and inArguments type the command-line arguments that the program requires.

      If the program requires user input from a command-line interface, select Open console for user input.

    • To record a TN3270 terminal emulation session, select IBM Personal Communication or Attachmate EXTRA! X-treme if these programs are installed, and click Next.

      If required, specify a session file to start the TN3270 session.

      Note: Using this method to record a TN3270 session produces a low-level socket API performance test that is based on the TN3270 protocol traffic. To record a TN3270 test, see Recording a TN3270 performance test.
    • To record an HTTP session, select Microsoft Internet Explorer or Mozilla Firefox, and click Next.

      If you choose Mozilla Firefox, you can specify a Firefox profile.

      Note: Using this method to record an HTTP session produces a socket API performance test that is based on the HTTP traffic. To record an HTTP test, see Recording an HTTP test.
  5. If the application uses Secure Sockets Layer (SSL) and Transport Layer Security (TLS) authentication to authenticate the server or the client application, specify the following options, and click Next:
    • Select The server requires a specific client certificate if you are using client authentication. Specify a certificate keystore file name and password. If multiple certificates are required, click Multiple certificates and specify a certificate keystore file name and password for each host name and port.
    • Select The client requires a specific server certificate to provide the certificate keystore file name of the server and a password for each host name and port.

      If you do not provide the server certificate, you must configure the client application to authenticate the certificate of the proxy recorder as though the proxy recorder were the actual server. Click Save this certificate to save the certificate that is generated by HCL OneTest Performance, and import the .cer file into the client application.

    If necessary, select whether to use SSL 3.0 and TLS 1.0 encryption. See Socket performance testing guidelines for more information about SSL and TLS authentication.
  6. If this is the first time that you record a socket API performance test, read the Privacy Warning, and select Accept to proceed.
  7. Click Finish to start recording.
    A progress window opens while the client program starts.
  8. Use the client program to perform the actions to test.
    You can use the Recorder Test Annotations toolbar to add comments, record synchronizations, or take screen captures during the recording.
    • To add a comment to the recorded test, click the Insert comment icon Insert comment icon.
    • To add a screen capture to the recorded test, click the Capture screen icon Capture screen icon. Screen and window captures make your tests easier to read and help you visualize the recorded test. You can change the settings for screen captures and add comments to images.
    • To manually add a test synchronization to the recording, click the Insert synchronization icon Insert synchronization icon.
    • To manually add a transaction folder to the recording, click the Start Transaction icon Start Transaction icon and Stop Transaction icon Stop Transaction button to start and stop the transaction.
    • To insert a split point into the recorded test, click the Split point icon Split point icon. With split points, you can generate multiple tests from a single recording, which you can replay in a different order with a schedule. See Splitting a test during recording for more information about splitting a test.
  9. When you have finished test actions in the program, stop the recorder. You can do this by closing the client program or by clicking the Stop Stop icon push button in the Recorder Control view.
    A progress window opens while the test is generated. On completion, the Recorder Control view displays the Test generation completed message, the Test Navigator lists your test, and the test opens in the test editor.