一、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文件
"""

最新文章

  1. JavaScript代码段整理笔记系列(一)
  2. windows xp 连接USB网络打印机服务器(通用所有usb网络打印机服务器的安装)
  3. Android中ListView控件的使用
  4. ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
  5. iOS端给unity发送消息,实现两者交互。
  6. Odoo 二次开发教程【一】 Odoo 的安装
  7. SCAU 10893 Spiral
  8. UVaLive 7371 Triangle (水题,判矩形)
  9. Oracle 11g系统自己主动收集统计信息的一些知识
  10. [MODx] Build a CMP (Custom manager page) using MIGX in MODX 2.3 -- 2
  11. Source Insight 显示中文乱码
  12. 浅谈MIPS地址对齐问题
  13. 适合入门自学服装裁剪滴书(更新ing)
  14. MySQL学习(五)
  15. MySQL 5.7--复制延迟监控
  16. Jmeter--报错 WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5.
  17. sqli-labs 下载、安装
  18. 关于CreateProcess函数一些经验
  19. python安装大型包时出现错误Unable to find vcvarsall.bat
  20. Vue 实现loading进度条

热门文章

  1. Blazor和Vue对比学习(知识点杂锦3.04):Blazor中C#和JS互操作(超长文)
  2. Docker与GU 安装管理配置
  3. GitHub Pages 站点建设
  4. 算法模板:spfa
  5. Java自增自减运算
  6. day30-注解
  7. 在 C# CLR 中学习 C++ 之了解 extern
  8. Python入门系列(八)日期时间、数学、json
  9. ClickHouse(05)ClickHouse数据类型详解
  10. CPU流水线与指令乱序执行