This is the multi-page printable view of this section.
Click here to print.
Return to the regular view of this page.
Desktop Companion
RealLoad Desktop Companion - Introduction
The Desktop Companion is a small application that allows you to manage some features related to the RealLoad Platform. The Desktop Companion App can be installed on Windows and macOS systems [ Download ] and includes, among other things, the RealLoad Proxy Recorder component.
In particular the Desktop Companion allows you to:
- Generate HTTP Load Test scripts from HTTP archives (.har) files
- Locally run the RealLoad Proxy Recorder
- Perform some basic editing of test scripts
- Upload test scripts directly to the RealLoad Portal
- Manage AWS Measuring Agents (launch, terminate, register with RealLoad Portal) by using your own AWS account
See sections below to learn more about the Desktop Companion.
1 - Desktop Companion - Pre-requisites
Read this first.
Before using the Desktop Companion make sure you satisfy the following pre-requisites:
RealLoad Portal User API Authentication Token (required)
In order to upload tests scripts to the RealLoad portal and register the AWS EC2 instances you’ve launched, the Desktop Companion requires that you configure an RealLead authentication token.
To create an authentication token proceed as follows:
Login to the RealLoad Portal and click on the User API Authentication Tokens menu.
Enter a suitable purpose. Optionally you can restrict the source IP address(es) from where this token can be used. Then click on the “Add API Authentication Tokens” button:
Copy the authentication Token Value to the clipboard as you’ll need to configure it in the Desktop Companion.
Input Fields:
AWS API Security Credentials (optional)
In order to use the AWS integration features, you’ll need to prepare Security Credentials with AWS IAM.
Search for “IAM” in the AWS search bar and click on “Users”:
Then add a new user:
Enter a suitable user name and select “Access key” as the AWS credential type.
On the next page set an appropriate policy for the user. Using the “AmazonEC2FullAccess” provides sufficient permissions.
Skip the “Add tags” screen and go to the “Review” screen and click on “Create user”. Make sure the permissions you’ve assigned to the user appear on this screen.
Finally take a note of the Access Key ID and Secret Access Key as thess need to be configured in the RealLoad Desktop Companion.
For further steps see Launching AWS Measuring Agents via the Desktop Companion App
2 - Desktop Companion - Settings Menu
Configure the Desktop Companion for integration with AWS and the RealLoad Portal.
Various application settings are configurable in the File Settings menu.
General settings
-
Default HAR input folder: Location where to look for .har (HTTP Archives) files by default. This should be the location where your browser writes files to.
-
Default export folder: This is the location where RealLoad HTTP test scripts will be exported to in JSON format.
-
Agent Secret: The Measuring Agent secret to authenticate connections from the RealLoad Portal to the Cloud Agent instance (AWS EC2 and Azure instances in future).
User API settings
-
Portal URL: The endpoint of the RealLoad portal User API. Unless you have an on-premise installation, use the default value https://portal.realload.com/RemoteUserAPI
-
Authentication Token: Enter here the authentication token that was generated by the Portal as part of the pre-requisites steps. Click on the “Test” button to test the API token.
-
Refresh Interval: How frequently should the list of Measuring Agents registered with the RealLoad portal be refreshed. Any value 60 seconds or lower indicates no background refresh, you’ll need to manually trigger a refresh via context menu. By default set to 61 seconds (background refresh enabled).
AWS settings
-
AWS Access Key ID: Paste the AWS Access Key that was obtained as part of the preparation steps.
-
AWS Secret Access Key: Paste the AWS Secret Access key that was obtained as part of the preparation steps. Use the “Test” button to validate the credentials.
-
Preferred Instance Type: The EC2 instance type to use when launching a new Measuring Agent instance.
-
AWS EC2 Refresh Interval: How frequently should the list of AWS EC2 instances be refreshed. Any value 60 seconds or lower indicates no background refresh, you’ll need to manually trigger a refresh via context menu. By default set to 61 seconds (background refresh enabled).
-
My AWS Regions: Select the AWS regions you commonly use. To select multiple regions hold the CTRL key while selecting.
My AWS Regions
The manual and background AWS EC2 running instances refresh will only query the AWS Regions listed in the “My Regions” list. Starting with v0.20, regions you launch AWS instances in will be automatically added to the “My Regions” list.
Proxy Recorder settings
-
Proxy Port: The TCP port on the local machine that will listen for incoming proxy connections. You’ll need to configure this port as the HTTP proxy in your browser.
-
Export CA Certificate: This exports the CA certificate used by reverse proxy to sign SSL certificates. The exported CA should be added as a trusted CA to the browser you’re planning to use to record HTTP requests.
The next settings should be left to default values, unless there are specific reasons for changing them.
- Proxy Backend Server Start Port Range: Starting TCP source port range for connections generated by the Proxy.
- Proxy Backend Server End Port Range: Ending (high) TCP source port range for connections generated by the Proxy.
- Debug HTTP Headers: Enables capturing HTTP headers values in Proxy debug log.
3 - Desktop Companion - File Menu
Import HTTP archives and export test scripts locally or to the Portal.
Import Test Script
Imports a HTTP Test Wizard session from the RealLoad portal into the Desktop Companion editor.
Import HAR File
Imports an HTTP Archive (.har file) generate by a web browser from a folder of your local desktop into the Desktop Companion editor.
This way you can convert HAR files into HTTP Test Wizard sessions.
Export Session to File
Saves the current session of the Desktop Companion editor in HTTP Test Wizard data format on your local desktop.
Export Session to Portal
Uploads the current session of the Desktop Companion editor in HTTP Test Wizard data format to the RealLoad portal. You’ll need to select the Project and Resource Set of the RealLoad portal:
You have 2 options:
- Overwrite existing test script: If you select and existing HTTP Test Wizard session without modifying the filename this will effectively overwrite it.
- Select a resource set: On the other hand if you select a resource set (… “Web Test” in the above screenshot for example) you’ll then have to enter a filename for your new HTTP Test Wizard session.
Filename format
When entering the filename there is no need to enter the HttpSession_ prefix and the .json suffix. These will be automatically added.
4 - Desktop Companion - Editor
Simple request editor.
In the ‘Editor and Proxy Recorder’ tab you’ll be able to perform some basic editing of the requests imported from an HAR file or recorded by the integrated proxy recorder.
For more complex editing please use the HTTP Test Wizard in the RealLoad portal after uploading your test script there.
Overview
The Editor area is split in 3 main parts:
- HTTP Requests: This section shows all HTTP requests imported from an HAR or recorded by the Proxy Recorder. The context menu accessible via a right click allows you to perform some basic editing functions.
- Request Details: When selecting a request some additional details about the HTTP request will appear, like values extracted from HTTP headers, etc…
- Unique Domains: In this section all unique domain names will be listed. Clicking on a domain will select all relevant rows in the requests table.
Delete Requests
You can mark requests in the main editor window by clicking on them. Hold the ctrl key to mark multiple request or use the shift key to mark a range of requests.
Once marked you can delete the requests by right-clicking on a marked request and selecting “Delete selected” from the context menu:
Adding Time Delays
To add a time delay before or after a request, select the relevant context menu item while hovering over a request. The time delay is currently hardcoded to 1 second, but can modified in the HTTP Test Wizard.
Time delays rows appear as requests of type in the main editor window:
Domain Based Selection
In order to bulk select all requests belonging to specific domains select one or more domains (by holding the CTRL key). This will select corresponding requests in the requests list which can then be easily deleted.
It is also possible to directly delete requests belonging to one or multiple domains using the context menu.
5 - Desktop Companion - AWS Measuring Agents
Launch and terminate AWS based Measuring Agents and manage their registration with the RealLoad portal.
The AWS tab allows you to manage cloud based Measuring Agents by using your own AWS account. This section of the application will be of most use if you configured AWS credentials in the preferences section of the application.
If no AWS credentials are configured, you won’t be able to start and terminate AWS instances.
Listing AMIs
In the left pane you’ll see a list of available AWS AMIs. You can further filter the list of AMIs by selecting a specific version and/or by selecting an AWS region.
My AWS Regions
Note that only the regions you’ve configured in the preferences window as “My regions” will appear in the regions filter.
Type:
- MA = Measuring Agent
- CC = Cluster Controller
Launching an Instance
To launch an new EC2 instance right-click on the relevant AMI and select “Launch”. A screen to confirm the launch will be displayed. Confirm by clicking on the “Launch” button.
When launching an instance in an AWS EC2 region that is not yet part of your “My Regions” list, the region will be automatically added to the list.
Launching a new instance will automatically trigger a refresh of the AWS Measuring Agents list. It might take a few second for the list to update and the new instance to be reflected in it.
A window will appear in which you can check the configuration of the instance and set the instance auto-terminate time period. You can also choose a value of zero for the auto-terminate time period, which means that the instance will continue to run until you stop it.
Important NOTE
For technical reasons, it may happen that a AWS instance was not automatically terminated.
You must therefore double-check at the end of each working day in the AWS Console whether all AWS instances that are no longer needed have actually been terminated.
Follow the instructions at Double-check no longer needed Instances
Listing running EC2 Instances
After launching an instance go to the top right part of the window listing the running instances and right click on “Refresh”. This will retrieve all running EC2 instances from the preferred AWS regions and display them in the table.
Listed instances
Note that only instances running in the regions you’ve configured in the preferences window as “My regions” and tagged with the “REAL_LOAD_AGENT” tag will be listed.
Registering an Instance
To register an AWS instance with the RealLoad wait Portal right-click on the instance and then select the “Register with portal” menu item. The instance ID will be used as the description in the RealLoad Portal.
List registered Instances
In the right bottom part of the window you’ll see the Measuring Agents currently registered on the RealLoad Portal. To update the list right click and select the “Refresh” option.
De-register an Instance
In order to de-register an instance from the RealLoad Portal right click on the instance name and select “De-register”.
Terminate an Instance
To terminate an AWS EC2 instance right click on the instance name.
6 - Desktop Companion - Proxy Recorder
Run the Proxy Recorder locally on your desktop.
The Desktop Companion allows you to run the RealLoad Proxy Recorder component locally on your desktop. Recorded HTTP(S) requests will then appear in the Editor tab.
There are two main sections in this chapter:
- How to configure your web browser.
- Hot to record a web session.
You’ll have to configure the listening TCP port of the integrated RealLoad Proxy Recorder in your web browser (host: 127.0.0.1, default port: 18080).
We strongly recommend using a web browser that allows you to configure proxy settings independently of the operating system’s proxy settings, for example Firefox (Chrome and Edge do not support this feature).
Import the Proxy Recorder CA Certificate
Security Warning
You should never import the RealLoad Proxy Recorder CA certificate into a web browser that you use for everyday activities such as online banking, etc. Furthermore, you should never import the Proxy Recorder CA certificate into the operating system’s “trust store”.
In case if you ignore this security warning, you must delete the Proxy Recorder CA Certificate in the web browser or in the operating system as soon as possible after recording a web surfing session.
Then reboot the operating system.
For the web browser to trust HTTPS (SSL) web server certificates issued on the fly by the local Proxy Recorder, you’ll need to import the Proxy’s CA certificate as follows:
1: First export the Proxy Recorder CA certificate to a file: In the Desktop Companion’s “Proxy Recorder” tab, click the “Export CA Certificate”. Then select a folder where the certificate is to be stored. It will be stored in a file named RecProxyCert.cer.
2: Then import the Proxy Recorder CA certificate into Firefox: In Firefox call Settings
Click Privacy & Security:
Scroll down to Security - Certificates, and click ‘View Certificates…’
In the Firefox Certificate Manager click first on Authorities and then on ‘Import…’
Select the CA Root Certificate you downloaded before and check the “Trust this CA to identify websites” box. Then click OK
The CA Root Certificate is now imported into Firefox:
In the Firefox “Settings” scroll to the bottom of the page where “Network Settings” are located.
Select “Manual proxy configuration” and configure the Proxy Host to 127.0.0.1 and the Proxy Port to 18080 for both HTTP and HTTPS. Enable the checkbox “Also use this proxy for HTTPS” and click the “OK” button.
Test Browser Configuration
Navigate to any HTTPS page. You shouldn’t see any warnings about untrusted SSL certificates beings used.
If you check the certificate of the site you’re visiting, the issuer should be “Real Load Pty Ltd”, as shown in the below screenshots.
Recording a Web Session
Before starting recording, you should clear the browser cache each time.
Then navigate to the “Editor and Proxy Recorder” tab and expand the “Proxy Recorder Controls” area:
To start the recording click on the “Start Recorder” button:
Then enter the URL in the web browser:
We recommend adding Page Breaks while recording - every time before you click a button in the web browser or submit a form.
Click “Stop Recorder” after recording is completed.
After recording, proceed as follows:
- Restore the original proxy settings in the browser and, if necessary, delete the Proxy Recorder CA certificate in the browser.
- Delete HTTP requests for unwanted domains.
- Upload the recorded web session to the RealLoad portal and post-edit it in the HTTP Test Wizard.