Testing a Tunnel

Once you have created a tunnel, you will be able to run load tests through this tunnel by using Flood's cloud based infrastructure. Every time you start a new Grid in your Flood dashboard, Flood will automatically associate that Grid with any active tunnels for your account in the same region.

Note: it is important that your start Grids after you have started a tunnel. This will ensure that the Grids are associated with the tunnel when they start.

Hosts File(s)

To make sure that your Flood load tests can resolve the private or corporate domain names in use, please upload a .hosts file which helps override DNS entries for your test.

Your .hosts file should look similar to the following:

address=/www.ecorp.dev/172.31.30.230

You can obtain the Local IPV4 address for your tunnel from the status command, for example:

> aqueduct status
╤╤ flood aqueduct ╤╤ : status
Aqueduct client container status:
+--------------------------+-------------+
| Running | true |
| Connected to tunnel UUID | XMesS6L9G0Q |
+--------------------------+-------------+
Available tunnels:
+---+-------------+----------------------------+---------+---------------+------------+---------------------+
| | UUID | NAME | STATUS | LOCAL IPV4 | AWS REGION | TIME UNTIL SHUTDOWN |
+---+-------------+----------------------------+---------+---------------+------------+---------------------+
| 1 | XMesS6L9G0Q | dusty-ridgeway-XMesS6L9G0Q | started | 172.31.30.230 | us-west-2 | 50m29s |
+---+-------------+----------------------------+---------+---------------+------------+---------------------+

If you don't want to specify a specific domain name you can also use the # symbol as a fallback for Floods, for any address they cannot automatically resolve, for example:

address=/#/172.31.30.230

Add the hosts file to your Flood to override the DNS entries for your specific tunnel.

Test Plans

The tunnel will terminate SSL connections on the Client side of your target application, therefore, when constructing your test plan in the tool of your choice, make sure you are targeting URLs with HTTP port 80, since HTTPS port 443 will be on the Client side of the tunnel, and HTTP port 80 will be on the Server side of the tunnel.

The Server side of the tunnel is what your Grid load generators will make their requests through.

JMeter

Gatling

val baseUrl = "http://www.ecorp.dev"

Element

await browser.visit('http://www.ecorp.dev')