fc23e4c2a5 | ||
---|---|---|
.github | ||
docs | ||
examples | ||
hrp | ||
httprunner | ||
scripts | ||
.gitignore | ||
Dockerfile | ||
LICENSE | ||
Makefile | ||
README.en.md | ||
README.md | ||
go.mod | ||
go.sum | ||
poetry.lock | ||
pyproject.toml |
README.en.md
HttpRunner
HttpRunner
is an open source API testing tool that supports HTTP(S)/HTTP2/WebSocket/RPC network protocols, covering API testing, performance testing and digital experience monitoring (DEM) test types. Simple and easy to use, powerful, with rich plug-in mechanism and high scalability.
HttpRunner 用户调研问卷 持续收集中,我们将基于用户反馈动态调整产品特性和需求优先级。
Key Features
API Testing
- Full support for HTTP(S)/1.1 and HTTP/2 requests.
- Support more protocols, WebSocket, TCP, RPC etc.
- Testcases can be described in multiple formats,
YAML
/JSON
/Golang
, and they are interchangeable. - Use Charles/Fiddler/Chrome/etc to record HTTP requests and generate testcases from exported
HAR
. - Supports
variables
/extract
/validate
/hooks
mechanisms to create extremely complex test scenarios. - Data driven with
parameterize
mechanism, supporting sequential/random/unique strategies to select data. - Built-in 100+ commonly used functions for ease, including md5sum, max/min, sleep, gen_random_string etc.
- Create and call custom functions with
plugin
mechanism, support hashicorp plugin and go plugin. - Generate html reports with rich test results.
- Using it as a
CLI tool
or alibrary
are both supported.
Load Testing
Base on the API testing testcases, you can run professional load testing without extra work.
- Inherit all powerful features of
locust
andboomer
. - Report performance metrics to prometheus pushgateway.
- Use
transaction
to define a set of end-user actions that represent the real user activities. - Use
rendezvous
points to force Vusers to perform tasks concurrently during test execution. - Load testing with specified concurrent users or constant RPS, also supports spawn rate.
- Support mixed-scenario testing with custom weight.
- Simulate browser's HTTP parallel connections.
- IP spoofing.
- Run in distributed mode to generate unlimited RPS.
Digital Experience Monitoring (DEM)
You can also monitor online services for digital experience assessments.
- HTTP(S) latency statistics including DNSLookup, TCP connections, SSL handshakes, content transfers, etc.
ping
indicators including latency, throughput and packets loss.- traceroute
- DNS monitoring
Install
You can install HttpRunner via one curl command.
$ bash -c "$(curl -ksSL https://httprunner.com/script/install.sh)"
Then you will get a hrp
CLI tool.
$ hrp -h
██╗ ██╗████████╗████████╗██████╗ ██████╗ ██╗ ██╗███╗ ██╗███╗ ██╗███████╗██████╗
██║ ██║╚══██╔══╝╚══██╔══╝██╔══██╗██╔══██╗██║ ██║████╗ ██║████╗ ██║██╔════╝██╔══██╗
███████║ ██║ ██║ ██████╔╝██████╔╝██║ ██║██╔██╗ ██║██╔██╗ ██║█████╗ ██████╔╝
██╔══██║ ██║ ██║ ██╔═══╝ ██╔══██╗██║ ██║██║╚██╗██║██║╚██╗██║██╔══╝ ██╔══██╗
██║ ██║ ██║ ██║ ██║ ██║ ██║╚██████╔╝██║ ╚████║██║ ╚████║███████╗██║ ██║
╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═══╝╚══════╝╚═╝ ╚═╝
HttpRunner is an open source API testing tool that supports HTTP(S)/HTTP2/WebSocket/RPC
network protocols, covering API testing, performance testing and digital experience
monitoring (DEM) test types. Enjoy! ✨ 🚀 ✨
License: Apache-2.0
Website: https://httprunner.com
Github: https://github.com/httprunner/httprunner
Copyright 2017 debugtalk
Usage:
hrp [command]
Available Commands:
adb simple utils for android device management
boom run load test with boomer
build build plugin for testing
completion Generate the autocompletion script for the specified shell
convert convert multiple source format to HttpRunner JSON/YAML/gotest/pytest cases
dns DNS resolution for different source and record types
help Help about any command
ios simple utils for ios device management
ping run integrated ping command
pytest run API test with pytest
run run API test with go engine
startproject create a scaffold project
wiki visit https://httprunner.com
Flags:
-h, --help help for hrp
--log-json set log to json format
-l, --log-level string set log level (default "INFO")
--venv string specify python3 venv path
-v, --version version for hrp
Use "hrp [command] --help" for more information about a command.
User Cases
Sponsor
霍格沃兹测试开发学社是中国软件测试开发高端教育品牌,产品由国内顶尖软件测试开发技术专家携手打造,为企业与个人提供专业的技能培训与咨询、测试工具与测试平台、测试外包与测试众包服务。领域涵盖 App/Web 自动化测试、接口自动化测试、性能测试、安全测试、持续交付/DevOps、测试左移、测试右移、精准测试、测试平台开发、测试管理等方向。-> 联系我们
Subscribe
关注 HttpRunner 的微信公众号,第一时间获得最新资讯。