1.httprunner3入门
2024-08-23 12:12:28
一、httprunner3
- httprunner是一款面向HTTP(S)协议的通用开源测试框架
- 支持三种格式的用例:YAML/JSON/Pytest,httprunner3以前不支持pytest用例
- 可实现自动化测试、持续集成等多种测试需求
- 继承Requsts的全部特性
- 在HAR支持下记录并生成测试用例
- 支持variables、extract、validate、hooks机制
- 使用debugtalk.py插件,任何功能都可以在测试用例任何部分使用
- 使用jmespath提取验证json
- Locust可以进行性能测试
- 支持CLI命令,与CI/CD完美结合
二、Httprunner安装
# 安装完之后会有httprunner命令 和har2case命令
pip3 install httprunner
#命令参数
httprunner run :运行YAML/JSON/Pytest测试用例
httprunner startproject :使用模板结构创建新项目
har2case -2y :将har文件转换成yaml文件,如果未指定,则生成pytest用例
har2case -2j : 将har文件转换成json文件,如果未指定,则生成pytest用例
httprunner make: YAML/JSON用例转成pytest用例
hrun: httprunner run 命令的缩写
hmake: httprunner make命令的缩写
三、通过抓包录制生成测试用例
- 抓包生成.har文件
- har2case 生成Yaml格式的用例
- har2case生成Json格式用例
- har2case生成Pytest格式的用例
- 我们也可以不抓包,手动编写Json、Yaml格式的测试用例然后运行
示例
我们使用命令创建项目
httprunner startproject 项目名
使用抓包工具抓到对应的接口,然后右键,选中export session导出当前会话文件,文件格式选择.har后缀,保存在项目har目录下,下图1,2
然后我们通过har2case命令,将har文件,转换成我们需要的yaml用例,下图3
导出保存har文件
生成yaml文件,对应文件内容和断言信息我们可以自定义
四、运行测试用例
运行命令:hrun 对应的测试用例
运行之后,会给我们自动生成一个pytest的用例脚本,然后执行该脚本
json文件也是同样的运行原理
当然我们也可以不指定参数默认生成pytest用例,然后使用pytest运行该用例
—filter、—exclude
如果我们抓包生多个请求,我们希望转换自己指定url地址或者排除指定的url地址
--filter:
#过滤url包含xxx.com的内容,如只转含127.0.0.1的url请求
har2case -2y xxx.har --filter 127.0.0.1
"""
请求地址包含127.0.0.1的接口请求全部转换成yaml文件
"""
--exclude
#排除url包含xxx.com的内容,如排除127.0.0.1的url请求
har2case -2y xxx.har —exclude 127.0.0.1
"""
请求地址除了127.0.0.1的接口请求全部转换yaml文件
"""
最新文章
- JavaScript代码段整理笔记系列(一)
- windows xp 连接USB网络打印机服务器(通用所有usb网络打印机服务器的安装)
- Android中ListView控件的使用
- ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
- iOS端给unity发送消息,实现两者交互。
- Odoo 二次开发教程【一】 Odoo 的安装
- SCAU 10893 Spiral
- UVaLive 7371 Triangle (水题,判矩形)
- Oracle 11g系统自己主动收集统计信息的一些知识
- [MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 2
- Source Insight 显示中文乱码
- 浅谈MIPS地址对齐问题
- 适合入门自学服装裁剪滴书(更新ing)
- MySQL学习(五)
- MySQL 5.7--复制延迟监控
- Jmeter--报错 WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5.
- sqli-labs 下载、安装
- 关于CreateProcess函数一些经验
- python安装大型包时出现错误Unable to find vcvarsall.bat
- Vue 实现loading进度条