You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/load-testing/reference-test-config-yaml.md
+136-8Lines changed: 136 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,10 +38,11 @@ A load test configuration uses the following keys:
38
38
|`secrets`| object | N || List of secrets that the Apache JMeter or Locust script references. See [secrets](#secrets-configuration) for more details. |
39
39
|`env`| object | N || List of environment variables that the Apache JMeter script or Locust references. See [environment variables](#env-configuration) for more details. |
40
40
|`certificates`| object | N || List of client certificates for authenticating with application endpoints in the JMeter or Locust script. See [certificates](#certificates-configuration) for more details.|
41
-
|`keyVaultReferenceIdentity`|string| N ||Resource ID of the user-assigned managed identity for accessing the secrets from your Azure Key Vault. If you use a system-managed identity, this information isn't needed. Make sure to grant this user-assigned identity access to your Azure key vault. Learn more about [managed identities in Azure Load Testing](./how-to-use-a-managed-identity.md). |
41
+
|`appComponents`|object| N ||List of server -side resources to monitor during the load test. See [appComponents](#appComponents-configuration) for more details. |
42
42
|`subnetId`| string | N || Resource ID of the virtual network subnet for testing privately hosted endpoints. This subnet hosts the injected test engine VMs. For more information, see [how to load test privately hosted endpoints](./how-to-test-private-endpoint.md). |
43
43
|`publicIPDisabled`| boolean | N || Disable the deployment of a public IP address, load balancer, and network security group while testing a private endpoint. For more information, see [how to load test privately hosted endpoints](./how-to-test-private-endpoint.md). |
44
44
|`regionalLoadTestConfig`| object | N || Distribute load across regions to simulate user traffic from multiple regions. For more information, See [regional load test configuration](#regional-load-test-configuration) for more details. |
45
+
|`referenceIdentities`| object | N || List of managed identities used in the test for accessing the secrets from your Azure Key Vault, metrics for server-side failure criteria and authentication of your endpoints. See [referenceIentities](#referenceidentities-configuration) for more details. |
Test fail criteria enable you to define conditions to determine if a load test run was successful or not. If one or more fail criteria are met, the test gets a failed test result. Learn more about [using load test fail criteria](./how-to-define-test-criteria.md).
81
+
Test fail criteria enable you to define conditions to determine if a load test run was successful or not. If one or more fail criteria are met, the test gets a failed test result. Learn more about [using load test fail criteria](./how-to-define-test-criteria.md). You can define failure criteria on client metrics, such as response time, latency, etc., and on server-side metricc for your server-side app components.
82
+
83
+
#### Client metrics
81
84
82
85
You can define fail criteria that apply to the entire load test, or that apply to a specific request. Fail criteria have the following structure:
83
86
84
87
- Test criteria at the load test level: `Aggregate_function (client_metric) condition threshold`.
85
88
- Test criteria applied to specific JMeter requests: `Request: Aggregate_function (client_metric) condition threshold`.
86
89
87
-
#### Supported client metrics
88
-
89
90
Azure Load Testing supports the following client metrics:
90
91
91
92
|Metric |Aggregate function |Threshold |Condition | Description |
@@ -96,7 +97,23 @@ Azure Load Testing supports the following client metrics:
96
97
|`requests_per_sec` | `avg` (average) | Numerical value with up to two decimal places. | `>` (greater than) <BR> `<` (less than) | Number of requests per second. |
97
98
|`requests` | `count` | Integer value. | `>` (greater than) <BR> `<` (less than) | Total number of requests. |
98
99
99
-
#### Fail criteria configuration sample
100
+
#### Server-side metrics
101
+
102
+
You can define fail criteria on server-side metrics for your server-side app components.
103
+
104
+
The following table describes the different fields in the `serverMetrics:` configuration:
105
+
106
+
|Parameter |Description |
107
+
|---------------------|-------------|
108
+
|`resourceId` | *Required.* The resource ID of app component on which the criteria should be applied |
109
+
|`metricNamespace` | *Required.* The server-side metric namespace. |
110
+
|`metricName` | *Required.* The server-side metrics on which the criteria should be applied. |
111
+
|`aggregation` | *Required.* The aggregation to apply on the server-side metrics. |
112
+
|`condition` | *Optional.* The comparison operator, such as `greater than`, or `less than`. |
113
+
|`value` | *Required.* The numeric value to compare with the metric. |
114
+
115
+
116
+
#### Failure criteria configuration sample
100
117
101
118
The following code snippet shows a load test configuration, which has three load test fail criteria.
You can monitor server-side resources during the load test. Learn more about [monitoring server-side resources](./how-to-monitor-server-side-metrics.md). When you run a load test for an Azure-hosted application, Azure Load Testing collects resource metrics for your application components and presents them in the load testing dashboard.
151
+
152
+
The following table describes the different fields in the `appComponents:` configuration:
153
+
154
+
|Parameter |Description |
155
+
|---------------------|-------------|
156
+
|`resourceId` | *Required.* The resource ID of app component on which the criteria should be applied. |
157
+
|`resourceName` | *Optional.* The name of the resource to be monitored. |
158
+
|`kind` | *Optional.* The kind of the resource to be monitired. |
159
+
|`metrics` | *Required.* The list of metrics to be monitored for the app component. This contains the name, namespace, and aggregation for the metric. |
160
+
161
+
#### App Components configuration sample
162
+
163
+
The following code snippet shows a load test configuration, which has two app components.
You can use managed identities for various scenarios in your load test. Managed identities can be used in the test for accessing the secrets or certificates from your Azure Key Vault, fetching metrics for server-side failure criteria and authentication of your endpoints.
341
+
342
+
The following table describes the different fields in the `referenceIdentities:` configuration:
343
+
344
+
|Parameter |Description |
345
+
|---------------------|-------------|
346
+
|`kind` | *Required.* This defines the scenario for which the managed identity is being used. This can be one of the following `KeyVault`, `Metrics`or `Engine`. There can be multiple items for the kind `Engine`. |
347
+
|`type` | *Required.* The type of identity. This can be `UserAssigned` or `SystemAssigned`. |
348
+
|`value` | *Required.* The resource ID of the managed identity. This need not be provided if the type is `SystemAssigned`. |
349
+
350
+
#### Reference identities configuration sample
351
+
352
+
The following code snippet shows a load test configuration, for multiple identities.
If you use a URL-based test, you can specify the HTTP requests in a JSON file instead of using a JMeter test script. Make sure to set the `testType` to `URL` in the test configuration YAML file and reference the requests JSON file.
0 commit comments