# httprunner/httprunner

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/httprunner-httprunner).**

4,279 stars · 1,283 forks · Go · Apache-2.0

## Links

- GitHub: https://github.com/httprunner/httprunner
- Homepage: https://httprunner.com
- awesome-repositories: https://awesome-repositories.com/repository/httprunner-httprunner.md

## Topics

`adb` `agent-tars` `mcp-server` `mcphost` `testing` `ui-tars` `ui-testing` `uiautomator2` `wda` `webdriveragent`

## Description

HttpRunner is a multi-protocol network testing framework designed for automating functional and regression tests of HTTP interfaces. It functions as a multi-protocol network tester supporting HTTP/1.1, HTTP/2, WebSocket, TCP, and RPC to validate diverse communication patterns. The project includes specialized engines for API performance testing, data-driven testing, and a test case generator that converts HAR files, curl commands, and Swagger definitions into executable scripts.

The framework is distinguished by its ability to separate test logic from business data via a data-driven execution engine and its support for high-concurrency load testing through distributed load orchestration. It features a multi-language plugin system that allows users to extend the core engine with custom validation and processing logic written in Go, Python, or Java.

The project covers a broad range of capabilities, including complex scenario modeling for user workflow simulation, response validation, and detailed network performance analysis. It provides tools for distributed load generation, geographic network probing, and the integration of automated test suites into CI pipelines.

The core testing engine can be executed via a command-line interface or wrapped within the Python testing ecosystem using a dedicated runner.

## Tags

### Testing & Quality Assurance

- [API Testing](https://awesome-repositories.com/f/testing-quality-assurance/api-network-testing/api-testing.md) — Provides a comprehensive framework for validating the functionality, performance, and integration of API interfaces. ([source](https://httprunner.com/docs/quickstart/))
- [Automated API Testing](https://awesome-repositories.com/f/testing-quality-assurance/automated-api-testing.md) — Automates functional and regression tests for HTTP interfaces using structured data and scripted validation. ([source](https://httprunner.com/docs/cases/dji-ibg))
- [Multi-Protocol Network Testers](https://awesome-repositories.com/f/testing-quality-assurance/multi-protocol-network-testers.md) — The project validates diverse network communication patterns using HTTP, WebSocket, TCP, and RPC. ([source](https://httprunner.com/docs/introduction/overview/))
- [API Testing Frameworks](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/api-protocol-testing/api-testing-frameworks.md) — A framework for automating functional and regression tests of HTTP interfaces using structured data and scripting.
- [Load Simulation Testing](https://awesome-repositories.com/f/testing-quality-assurance/api-endpoint-testing/simulated-request-testing/load-simulation-testing.md) — The project executes high-concurrency stress tests using a high-performance engine to simulate thousands of virtual users. ([source](https://cdn.jsdelivr.net/gh/httprunner/httprunner@master/README.md))
- [API Regression Testing](https://awesome-repositories.com/f/testing-quality-assurance/api-regression-testing.md) — Runs automated interface tests across business lines to verify functional requirements and improve regression efficiency. ([source](https://httprunner.com/docs/cases/dji-ibg))
- [Automated Performance Testing](https://awesome-repositories.com/f/testing-quality-assurance/automated-performance-testing.md) — The project runs stability and speed evaluations through a command line interface using diverse execution strategies. ([source](https://httprunner.com/docs/user-guide/load-test/boom/))
- [Data-Driven Testing](https://awesome-repositories.com/f/testing-quality-assurance/data-driven-testing.md) — Executes test cases repeatedly using external datasets from CSV or JSON files to validate diverse input scenarios. ([source](https://httprunner.com/docs/user-guide/enhance-tests/parameterize/))
- [Distributed Load Generation](https://awesome-repositories.com/f/testing-quality-assurance/distributed-load-generation.md) — Coordinates controller and worker nodes to generate high-concurrency traffic for system stability and performance measurements.
- [Distributed Performance Testing Engines](https://awesome-repositories.com/f/testing-quality-assurance/distributed-performance-testing-engines.md) — Coordinates worker nodes to simulate concurrent users and distributed load for system stability measurement.
- [Scenario Sequence Management](https://awesome-repositories.com/f/testing-quality-assurance/scenario-sequence-management.md) — Coordinates data flow between interdependent calls using extractors and variables to build linked test scenarios. ([source](https://cdn.jsdelivr.net/gh/httprunner/httprunner@master/README.md))
- [Concurrency Burst Testing](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/testing-frameworks/test-frameworks/execution-and-infrastructure/automated-test-generators/stress-testing/concurrency-burst-testing.md) — The project executes high-volume request bursts using a high-speed engine to measure system behavior under stress. ([source](https://httprunner.com/docs/introduction/faq/))
- [Performance Testing Frameworks](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/testing-frameworks/test-frameworks/performance-testing-frameworks.md) — Provides a framework to measure system stability and response times under high concurrent load.
- [Response Parameter Extraction](https://awesome-repositories.com/f/testing-quality-assurance/test-data-extraction/response-parameter-extraction.md) — Parses response data using queries and regular expressions to pass values between subsequent test steps. ([source](https://httprunner.com/docs/introduction/versions/))
- [API Scenario Orchestrations](https://awesome-repositories.com/f/testing-quality-assurance/test-data-management/api-scenario-orchestrations.md) — Creates dependent request chains and sophisticated test workflows using variables and data extraction. ([source](https://httprunner.com/docs/introduction/overview/))
- [Variable Scope Management](https://awesome-repositories.com/f/testing-quality-assurance/test-data-management/variable-scope-management.md) — Manages the lifecycle and visibility of test variables across different scopes to maintain flexible configurations. ([source](https://httprunner.com/docs/introduction/concepts/))
- [Test Execution Reports](https://awesome-repositories.com/f/testing-quality-assurance/test-execution-reports.md) — The project creates documents that summarize execution metrics and provide detailed logs of requests and responses. ([source](https://httprunner.com/docs/user-guide/api-test/report/))
- [Sequential Test Executions](https://awesome-repositories.com/f/testing-quality-assurance/test-suite-execution/sequential-test-executions.md) — Executes network requests in a specific order to simulate user behavior and maintain transaction boundaries. ([source](https://httprunner.com/docs/user-guide/gen-tests/write-cases/))
- [User Workflow Modeling](https://awesome-repositories.com/f/testing-quality-assurance/user-workflow-modeling.md) — Builds intricate testing workflows and data-driven scenarios using variables and validation hooks to simulate user behavior. ([source](https://httprunner.com/))
- [User Workflow Simulation](https://awesome-repositories.com/f/testing-quality-assurance/user-workflow-simulation.md) — Simulates complex real-world user interactions through multi-step test scenarios using variables and validation rules. ([source](https://httprunner.com/))
- [Virtual User Simulation](https://awesome-repositories.com/f/testing-quality-assurance/virtual-user-simulation.md) — The project stress tests system capacity by mimicking high volumes of virtual users via a distributed execution engine. ([source](https://cdn.jsdelivr.net/gh/httprunner/httprunner@master/README.md))
- [Request Burst Synchronization](https://awesome-repositories.com/f/testing-quality-assurance/api-endpoint-testing/simulated-request-testing/load-simulation-testing/request-burst-synchronization.md) — The project forces virtual users to wait at a rendezvous point before triggering simultaneous requests to simulate spikes. ([source](https://httprunner.com/docs/user-guide/load-test/concepts/))
- [Traffic Weight Configuration](https://awesome-repositories.com/f/testing-quality-assurance/api-endpoint-testing/simulated-request-testing/load-simulation-testing/traffic-weight-configuration.md) — The project defines virtual user weights for specific test cases to simulate realistic traffic distribution during load testing. ([source](https://httprunner.com/docs/user-guide/gen-tests/write-cases/))
- [CI Integration Testing](https://awesome-repositories.com/f/testing-quality-assurance/ci-integration-testing.md) — Integrates automated API test suites into CI pipelines to detect regressions during commits.
- [CI Test Execution](https://awesome-repositories.com/f/testing-quality-assurance/ci-test-execution.md) — Automatically executes specific test modules whenever code is committed to a version control system. ([source](https://httprunner.com/docs/cases/mihoyo))
- [API Request Configurations](https://awesome-repositories.com/f/testing-quality-assurance/general-testing-utilities/test-utilities-assertions/network-api-mocking/api-request-configurations.md) — Sets shared domains and request headers to be used globally across multiple test modules. ([source](https://httprunner.com/docs/cases/yangfan/))
- [Setup and Teardown Hooks](https://awesome-repositories.com/f/testing-quality-assurance/general-testing-utilities/test-utilities-assertions/test-lifecycle-execution-control/test-execution-controls/setup-and-teardown-hooks.md) — Includes hooks to execute setup and teardown functions for resource allocation and cleanup around test steps. ([source](https://httprunner.com/docs/user-guide/enhance-tests/hooks/))
- [Interface Latency Profiling](https://awesome-repositories.com/f/testing-quality-assurance/high-precision-latency-analysis/interface-latency-profiling.md) — The project measures timing for DNS, TCP, TLS, and server processing to identify the cause of slow API responses. ([source](https://httprunner.com/docs/user-guide/dem/))
- [Localized Payment Testing](https://awesome-repositories.com/f/testing-quality-assurance/localized-payment-testing.md) — Tests payment flows using regional methods and local networks to identify checkout failure points. ([source](https://httprunner.com/docs/services/dem/))
- [Schema-Driven Definitions](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/test-execution-orchestration/test-case-generators/test-case-deduplication/test-case-annotations/test-case-definitions/schema-driven-definitions.md) — Transforms structured YAML and JSON data formats into executable sequences of network request steps.
- [Request-to-Test Conversions](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/testing-frameworks/test-frameworks/assertions-and-validation/test-case-definitions/parametrized-test-cases/playground-to-test-conversions/request-to-test-conversions.md) — Turns captured network requests directly into executable test scenarios to accelerate the creation of test suites. ([source](https://cdn.jsdelivr.net/gh/httprunner/httprunner@master/README.md))
- [CLI Test Runners](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/testing-frameworks/test-frameworks/execution-and-infrastructure/test-execution-runners/cli-test-runners.md) — Provides a command-line interface for executing automated interface and performance test suites. ([source](https://httprunner.com/docs/user-guide/cli/))
- [Pytest Wrappers](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/testing-frameworks/test-frameworks/test-levels-and-types/integration-testing-suites/integration-test-support/pytest-wrappers.md) — Wraps the core testing engine within a standard pytest runner for improved CLI control and reporting.
- [Test Scenario Synchronization](https://awesome-repositories.com/f/testing-quality-assurance/test-data-management/test-scenario-synchronization.md) — Synchronizes test data and scenarios to enable reuse across both functional and performance testing domains. ([source](https://httprunner.com/docs/cases/dji-ibg/))
- [API Test Collections](https://awesome-repositories.com/f/testing-quality-assurance/unit-testing-frameworks/test-suite-organization/api-test-collections.md) — Groups API tests into hierarchical collections organized by functional module or service for better management. ([source](https://httprunner.com/docs/cases/yangfan/))
- [User Behavior Simulation](https://awesome-repositories.com/f/testing-quality-assurance/user-behavior-simulation.md) — The project inserts fixed or random delays between test steps to mimic real human interaction and browsing behavior. ([source](https://httprunner.com/docs/user-guide/load-test/concepts/))
- [WebSocket Interface Testing](https://awesome-repositories.com/f/testing-quality-assurance/websocket-interface-testing.md) — The project performs full-duplex communication by opening connections, sending messages, and closing sessions. ([source](https://httprunner.com/docs/user-guide/protocols/websocket/))

### Data & Databases

- [Custom Test Logic Integrators](https://awesome-repositories.com/f/data-databases/custom-python-integration/inline-logic-execution/custom-test-logic-integrators.md) — Supports integrating external scripts in multiple languages to handle complex business logic during tests. ([source](https://httprunner.com/docs/user-guide/enhance-tests/debugtalk/))
- [Performance Metric Aggregators](https://awesome-repositories.com/f/data-databases/real-time-data-aggregators/performance-metric-aggregators.md) — The project groups multiple interface requests into a single transaction to measure performance based on real-world scenarios. ([source](https://httprunner.com/docs/user-guide/load-test/concepts/))
- [Test Definition Conversions](https://awesome-repositories.com/f/data-databases/structured-data-schemas/format-conversions/test-definition-conversions.md) — Transforms test definitions between YAML, JSON, and native formats for cross-tool compatibility. ([source](https://httprunner.com/))

### Development Tools & Productivity

- [API Test Case Generators](https://awesome-repositories.com/f/development-tools-productivity/api-test-case-generators.md) — Transforms HAR files, Postman collections, Swagger definitions, and curl commands into executable test scripts. ([source](https://httprunner.com/docs/introduction/versions/))
- [Test Suites](https://awesome-repositories.com/f/development-tools-productivity/debugging-profiling-testing/test-execution-management/test-suites.md) — Groups multiple test cases into a single collection for batch execution from files or directories. ([source](https://httprunner.com/docs/user-guide/gen-tests/write-cases/))

### DevOps & Infrastructure

- [Multi-Language Plugin Frameworks](https://awesome-repositories.com/f/devops-infrastructure/release-automation/plugin-extensibility/multi-language-plugin-frameworks.md) — Implements a plugin architecture supporting extensions written in Go, Python, and Java. ([source](https://httprunner.com/docs/introduction/versions/))
- [CI Pipeline Integrations](https://awesome-repositories.com/f/devops-infrastructure/ci-cd-pipelines/ci-pipeline-integrations.md) — Integrates automated test suites into CI pipelines to validate modules and prevent regressions during code commits. ([source](https://httprunner.com/docs/cases/mihoyo))

### Networking & Communication

- [Network Protocol Testing](https://awesome-repositories.com/f/networking-communication/network-protocol-testing.md) — Executes functional and performance tests for network protocols to validate consistent and reliable system behavior. ([source](https://cdn.jsdelivr.net/gh/httprunner/httprunner@master/README.md))
- [Multi-Protocol Functional Tests](https://awesome-repositories.com/f/networking-communication/network-protocol-testing/multi-protocol-functional-tests.md) — Runs functional tests across multiple communication protocols to ensure network data transfers correctly between systems. ([source](https://httprunner.com/))
- [Multi-Protocol Transport Abstraction](https://awesome-repositories.com/f/networking-communication/network-transport-protocols/multi-protocol-transport-abstraction.md) — Provides a unified internal interface to abstract interactions across HTTP, WebSocket, TCP, and RPC protocols.
- [HTTP/2 Support](https://awesome-repositories.com/f/networking-communication/http-2-support.md) — The project runs requests using the HTTP/2 protocol to verify the performance and functional behavior of web services. ([source](https://httprunner.com/docs/user-guide/protocols/h2/))
- [HTTP Request Performance Analysis](https://awesome-repositories.com/f/networking-communication/http-request-performance-analysis.md) — The project collects detailed timing metrics for DNS resolution, TCP connection, and SSL handshaking during requests. ([source](https://cdn.jsdelivr.net/gh/httprunner/httprunner@master/README.md))
- [Multi-Protocol HTTP Support](https://awesome-repositories.com/f/networking-communication/multi-protocol-http-support.md) — The project checks if a server communicates via HTTP/2 or HTTP/1.1 to ensure correct protocol negotiation. ([source](https://httprunner.com/docs/user-guide/protocols/h2/))
- [WebSocket Connection Management](https://awesome-repositories.com/f/networking-communication/websocket-connection-management.md) — The project establishes connections with custom parameters, handles heartbeats, and closes sessions with specific status codes. ([source](https://httprunner.com/docs/user-guide/protocols/websocket/))

### Software Engineering & Architecture

- [Plugin-Based Logic Extensions](https://awesome-repositories.com/f/software-engineering-architecture/plugin-based-logic-extensions.md) — Allows loading external scripts and binaries to execute custom logic during the request lifecycle. ([source](https://httprunner.com/))
- [Framework Extension Points](https://awesome-repositories.com/f/software-engineering-architecture/plugin-based-logic-extensions/transformation-logic-extensions/framework-extension-points.md) — Provides customizable hooks and plugin functions to extend the core framework logic. ([source](https://cdn.jsdelivr.net/gh/httprunner/httprunner@master/README.md))
- [Environment Variable Sets](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/environment-variable-management/environment-variables/environment-variable-sets.md) — Manages sets of fixed variables to ensure consistency across different deployment environments. ([source](https://httprunner.com/docs/cases/yangfan/))

### Web Development

- [API Response Validation](https://awesome-repositories.com/f/web-development/rest-apis/api-response-validation.md) — Verifies that API response fields and status codes match expected results using extraction and comparison logic. ([source](https://httprunner.com/docs/user-guide/enhance-tests/validate/))

### Programming Languages & Runtimes

- [HAR File Parsers](https://awesome-repositories.com/f/programming-languages-runtimes/type-annotations/request-parameter-parsing/http-request-file-parsers/har-file-parsers.md) — Converts exported HTTP Archive (HAR) files into automated test cases for rapid reproduction of network traffic. ([source](https://httprunner.com/docs/user-guide/gen-tests/record/))

### Security & Cryptography

- [WebSocket Data Assertions](https://awesome-repositories.com/f/security-cryptography/websocket-security/websocket-payload-validations/websocket-data-assertions.md) — The project extracts parameters from responses and performs assertions on returned data to verify communication correctness. ([source](https://httprunner.com/docs/user-guide/protocols/websocket/))

### System Administration & Monitoring

- [Geographic Probes](https://awesome-repositories.com/f/system-administration-monitoring/distributed-monitoring-probe-networks/geographic-probes.md) — The project probes domains and resource requests from specific geographic regions to optimize network latency. ([source](https://httprunner.com/docs/services/dem/))
- [Latency Metrics](https://awesome-repositories.com/f/system-administration-monitoring/logging/system-metrics-collection/network-protocol-metrics/latency-metrics.md) — The project captures detailed latency data for DNS resolution, TCP connection, and data transmission. ([source](https://httprunner.com/))
- [Synthetic User Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/synthetic-user-monitoring.md) — The project simulates user behavior using real devices and global networks to identify issues and causes. ([source](https://httprunner.com/docs/services/dem/))
