Self Hosted Azure Test Runner Setup

Test Runner instances generate load for your test. These instances can self-hosted within your Azure account. Testable will create the VM scale set for your test within your Azure account as part of running your test and terminate it upon test completion.

In order to make this work you need to grant Testable access to your Azure account. The steps to do that are detailed in this guide.

Step 1: Create an Azure account

If you do not already have an Azure account, go to azure.microsoft.com to create a free one.

Step 2: Install the Azure CLI

The Azure CLI is the command line tool for managing Azure resources. Follow the install guide for more details.

Step 3: Get your Subscription ID

Either via the Azure portal (under Cost Management + Billing => My Subscriptions) or via the CLI (after performing az login) with the following command:

az account list --output json

The id field in the output is the subscription ID.

[
  {
    "cloudName": "AzureCloud",
    "id": "xxx",
    "isDefault": true,
    "name": "Free Trial",
    "state": "Enabled",
    "tenantId": "yyy",
    "user": {
      "name": "foo@bar.com",
      "type": "user"
    }
  }
]

Step 4: Create a service principal

Create a service principal with "Owner" access to the subscription in which Testable will create resources. You can do this using the Azure CLI as follows (use the subscription ID from step 3):

az ad sp create-for-rbac -n "Testable" --role owner --scopes /subscriptions/xxx

The output will look as follows:

{
  "appId": "aaa",
  "displayName": "Testable",
  "name": "http://Testable",
  "password": "bbb",
  "tenant": "ccc"
}

The appId (client ID), password (client secret), and tenant (tenant ID) are all required for setting up your Azure account as a source.

Step 5: Create a Test Runner Source

Login to your Testable account and go to Org Management => Test Runner Sources and press the Add On Demand Source button in the upper left.

Use the subscription ID from step 3 and the other details from step 4 to setup the test runner.

Create Test Runner

And that's it! You will now see this test runner in the list when you create a new test configuration.

Add