Azure DevOps pipeline for scalable cloud load testing using Apache JMeter and Terraform to dynamically provision Azure Container Instances.
jmeter-aci-terraform is an Azure DevOps pipeline solution for automated cloud load testing. It combines Apache JMeter for performance testing with Terraform infrastructure provisioning to create scalable, on-demand testing environments on Azure Container Instances. The solution addresses the challenge of running distributed load tests without maintaining permanent infrastructure.
DevOps engineers and performance testing teams working in Azure environments who need to integrate load testing into their CI/CD pipelines. It's particularly useful for organizations already using Azure DevOps and Terraform.
Developers choose this solution because it provides a complete, automated pipeline for ephemeral load testing infrastructure, reducing costs and operational overhead compared to maintaining dedicated testing environments. The tight integration with Azure DevOps and Terraform makes it ideal for Azure-centric workflows.
Scalable cloud load/stress testing pipeline solution with Apache JMeter and Terraform to dynamically provision and destroy the required infrastructure on Azure.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses Terraform to dynamically provision and destroy Azure Container Instances, ensuring resources are only active during tests, which optimizes costs as stated in the key features.
Provides a complete pipeline with SETUP, TEST, RESULTS, and TEARDOWN phases, seamlessly integrating JMeter results into Azure DevOps through JUnit conversion and artifact publishing.
Implements JMeter's remote testing approach with configurable worker counts on ACI, enabling scalable load tests as described in the architecture.
Generates JMeter dashboards and converts test results to JUnit format for detailed reporting in Azure DevOps, enhancing visibility as shown in the viewing results section.
The project is explicitly archived in the README, with a recommendation to use Azure Load Testing service, meaning no updates, bug fixes, or community support.
Requires multiple tools (Azure CLI, Azure DevOps CLI, jq), Azure resources (ACR, service principal), and involves numerous CLI commands, making onboarding time-consuming and error-prone.
Heavily dependent on Azure-specific services like ACI, Azure DevOps, and Azure Storage, limiting portability and flexibility for multi-cloud or on-premises deployments.
Subject to Azure DevOps hosted agent time limits (1-6 hours), which can hinder long-running load tests without investing in custom agents, as noted in limitations.
Load Testing Pipeline with JMeter, ACI and Terraform is an open-source alternative to the following products: