HttpRunner接口自动化测试框架
更新时间:2022-08-01 09:12:36 作者:多测师 浏览:165
HttpRunner是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求。
核心特性
·继承 Requests 的全部特性,轻松实现 HTTP(S) 的各种测试需求
·测试用例与代码分离,采用YAML/JSON的形式描述测试场景,保障测试用例具备可维护性
·测试用例支持分层机制,充分实现测试用例的复用
·测试用例支持参数化和数据驱动机制
·使用 skip 机制实现对测试用例的分组执行控制
·测试请求支持完善的 hook 机制
·支持热加载机制,在文本测试用例中轻松实现复杂的动态计算逻辑
·基于 HAR 实现接口录制和用例生成功能(har2case)
·结合 Locust 框架,无需额外的工作即可实现分布式性能测试
·执行方式采用 CLI 调用,可与 Jenkins 等持续集成工具完美结合
·测试结果统计报告简洁清晰,附带详尽统计信息和日志记录
·具有可扩展性,便于扩展实现 Web 平台化(HttpRunnerManager)
下载安装
使用pip命令进行安装
pip install httprunner
安装后效验是否安装成功,可以使用如下命令进行效验:
hrun -V
1.4.2
har2case -V
0.1.8
若版本号正常显示,则说明安装正常。
入门使用
1、测试场景
·测试接口:http://httpbin.org/get
·接口类型:GET
2、用例设计
HttpRunner的测试用例支持两种文件格式:YAML 和 JSON。这里以YAML为例。
# test_httpbin.yml
- config:
name: httpbin api test
request:
base_url: http://www.httpbin.org
- test:
name: get request
request:
url: /get
method: GET
validate:
- eq: [status_code,200]
·config:作为整个测试用例集的全局配置项
·test:对应单个测试用例
·name 这个test的名字
·request 这个test具体发送http请求的各种信息, 如下:
·url 请求的路径 (若config中有定义base_url, 则完整路径是用 base_url + url )
·method 请求方法 POST, GET等等
·validate 完成请求后, 所要进行的验证内容. 所有验证内容均通过该test才算通过,否则失败
运行测试
使用hrun执行测试,如下所示:
C:\Users\Shuqing>hrun D:\api_test\HttpRunner_test\test_httpbin.yml
get request
INFO GET /get
INFO status_code: 200, response_time(ms): 1967.35 ms, response_length: 273 bytes
INFO start to validate.
.
----------------------------------------------------------------------
Ran 1 test in 1.976s
OK
INFO Start to render Html report ...
INFO Generated Html report: C:\Users\Shuqing\reports\1533092144.html
以上内容为大家介绍了HttpRunner接口自动化测试框架,本文由多测师亲自撰写,希望对大家有所帮助。了解更多接口自动化测试相关知识:https://www.aichudan.com/xwzx/
上一篇:为什么我们的自动化测试做不起来?
下一篇:好的自动化测试框架实现思路