Cloud-based Load Test task
TFS 2017 | TFS 2015
While Azure DevOps cloud-based load testing service is deprecated, Azure Load Testing Preview is available. Azure Load Testing Preview is a fully managed load testing service that enables you to use existing Apache JMeter scripts to generate high-scale load. To learn more, see What is Azure Load Testing Preview?. To learn more about the deprecation of Azure DevOps load testing and other, alternative services see Changes to load test functionality in Visual Studio and cloud load testing in Azure DevOps.
Use this task to run a load test in the cloud, to understand, test, and validate your app's performance. The task uses the Cloud-based Load Test Service based in Microsoft Azure and can be used to test your app's performance by generating load on it.
In Microsoft Team Foundation Server (TFS) 2018 and previous versions, build and release pipelines are called definitions, runs are called builds, service connections are called service endpoints, stages are called environments, and jobs are called phases.
The agent must have the following capability:
- Azure PowerShell
|Azure Pipelines connection||The name of a Generic service connection that references the Azure DevOps organization you will be running the load test from and publishing the results to.
- Required for builds and releases on TFS and must specify a connection to the Azure DevOps organization where the load test will run.
- Optional for builds and releases on Azure Pipelines. In this case, if not provided, the current Azure Pipelines connection is used.
- See Generic service connection.
|Test settings file||Required. The path relative to the repository root of the test settings file that specifies the files and data required for the load test such as the test settings, any deployment items, and setup/clean-up scripts. The task will search this path and any subfolders.|
|Load test files folder||Required. The path of the load test project. The task looks here for the files required for the load test, such as the load test file, any deployment items, and setup/clean-up scripts. The task will search this path and any subfolders.|
|Load test file||Required. The name of the load test file (such as myfile.loadtest) to be executed as part of this task. This allows you to have more than one load test file and choose the one to execute based on the deployment environment or other factors.|
|Number of permissible threshold violations||Optional. The number of critical violations that must occur for the load test to be deemed unsuccessful, aborted, and marked as failed.|
|Control options||See Control options|
- Cloud-based Load Testing
- Source code for this task
- Build your Visual Studio solution
- Cloud-based Load Testing Knowledge Base
This task is open source on GitHub. Feedback and contributions are welcome.
How do I use a Test Settings file?
The Test settings file references any setup and cleanup scripts required to execute the load test. For more details see: Using Setup and Cleanup Script in Cloud Load Test
When should I specify the number of permissible threshold violations?
Use the Number of permissible threshold violations setting if your load test is not already configured with information about how many violations will cause a failure to be reported. For more details, see: How to: Analyze Threshold Violations Using the Counters Panel in Load Test Analyzer.
Do I need an agent?
You need at least one agent to run your build or release.
I'm having problems. How can I troubleshoot them?
I can't select a default agent pool and I can't queue my build or release. How do I fix this?
See Agent pools.
My NuGet push task is failing with the following error: "Error: unable to get local issuer certificate". How can I fix this?
This can be fixed by adding a trusted root certificate. You can either add the
NODE_EXTRA_CA_CERTS=file environment variable to your build agent, or you can add the
NODE.EXTRA.CA.CERTS=file task variable in your pipeline. See Node.js documentation for more details about this variable. See Set variables in a pipeline for instructions on setting a variable in your pipeline.