One-stop solution for HTTP(S) testing.
Project description
ApiMeter
ApiMeter is a simple & elegant, yet powerful HTTP(S) testing framework. Enjoy! ✨ 🚀 ✨
Design Philosophy
- Embrace open source, stand on giants' shoulders, like
Requests
,unittest
andLocust
. - Convention over configuration.
- Pursuit of high rewards, write once and achieve a variety of testing needs
Key Features
- Inherit all powerful features of
Requests
, just have fun to handle HTTP(S) in human way. - Define testcases in YAML or JSON format in concise and elegant manner.
- Record and generate testcases with
HAR
support. seehar2case
. - Supports
variables
/extract
/validate
mechanisms to create full test scenarios. - Supports perfect hook mechanism.
- With
debugtalk.py
plugin, very easy to implement complex logic in testcase. - Testcases can be run in diverse ways, with single testcase, multiple testcases, or entire project folder.
- Test report is concise and clear, with detailed log records.
- With reuse of
Locust
, you can run performance test without extra work. - CLI command supported, perfect combination with
CI/CD
.
Documentation
ApiMeter is rich documented.
Usage
pip install apimeter # 安装
apimeter /path/to/api # 完整生成报告
apimeter /path/to/api --skip-success # 报告忽略成功用例数
注意事项
- 1、安装后可用命令apimeter、hrun、apilocust;
- 2、安装时不需要卸载HttpRunner,如果存在httprunner,会覆盖其hrun命令,另外的httprunner、ate命令依然可用;
- 3、之所以不写字HttpRunner,因为部分项目在debugtalk.py中导入了HttpRunner包并使用其已封装好的函数;
Development
poetry install # 拉取代码后安装依赖
poetry run python -m apimeter /path/to/api # 完整生成报告
poetry run python -m apimeter /path/to/api --skip-success # 报告忽略成功用例数据
poetry build # 打包
poetry publish # 发布,根据提示输入pypi账号密码
pip install -i https://pypi.Python.org/simple/ apimeter # 指定安装源,因为刚发布其他平台未及时同步
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
apimeter-2.6.1.tar.gz
(66.8 kB
view hashes)
Built Distribution
Close
Hashes for apimeter-2.6.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e23079b5717fc8794b33364f214f2657eb9bda3cd13a66f9c3ad34396a1302b5 |
|
MD5 | 03fdfc210f9a77dd3bce1547b80397a4 |
|
BLAKE2b-256 | c2c3cfdac6f5ab438e2adc814e4a8ed7fd6ab5f6315ce7831d8ddfa5d9457eab |