学了这套httprunner测试框架,性能测试和接口测试,都可以搞定

一、安装Python解释器

下载安装并配置zsh环境变量,请参考本人之前写的博客:

【编程环境准备】在MacOS上配置sublime text运行python3最佳教程

操作系统:MacOS 11.6
运行Python版本:3.8.10

二、安装httprunner测试框架

2.1 框架介绍

1、HttpRunner 是一款面向 HTTP(S) 协议的跨平台通用测试框架,只需编写维护一份YAML/JSON脚本,即可实现接口测试、性能测试、线上监控等多种任务需求。

2、HttpRunner 是 基于 Python 开发的测试框架,可以运行在macOS、Linux、Windows 系统平台上。官方建议使用 Python 3.6 及以上版本。

3、兼容Locust Locust是一款易于使用的分布式用户负载测试工具。它用于对网站(或其他系统)进行负载测试,并确定系统可以处理多少并发用户。HttpRunner 通过复用Locust ,可以在无需对 YAML/JSON 进行任何修改的情况下,直接进行性能测试。

4、在线使用手册 附httprunner使用文档地址:https://docs.httprunner.org/installation/

2.2 模块安装

可指定具体的版本进行安装。

1)安装httprunner: pip install httprunner==2.4.6 -i https://pypi.tuna.tsinghua.edu.cn/simple

2)安装har2case: pip install har2case==0.3.1 -i https://pypi.tuna.tsinghua.edu.cn/simple

3)检查安装是否成功:hrun -V 或者httprunner -V

如果python环境变量配置出错,则会在MacBook Pro上提示找不到这个命令!

https://www.cnblogs.com/MarlonKang/p/15137437.html

在MacBook Pro编程还需要手动配置 zsh和 bash两种Shell的环境变量的配置文件。

https://www.cnblogs.com/qianjinyan/p/13887556.html

4)安装locust: pip install locust==2.2.2 -i https://pypi.tuna.tsinghua.edu.cn/simple

2.3 文件路径介绍

 testcases:存放用例;里面包含对单个或多个 由一个 YAML/JSON 文件构成的testcase 记录。

 testsuites:存放套件,对应一个文件夹。里面包含单个或多个测试用例(YAML/JSON)文件。

 reports:自动生成 HTML 测试报告的 默认存储文件夹。

 api 文件夹:存储接口定义描述。

 debugtalk.py(可选):该文件所在目录将作为项目工程的根目录。该文件不存在时,运行测试的所在路径将被视为项目工程根目录。
 .env(可选):存储项目环境变量,通常用于存储项目敏感信息
 .csv(可选):项目数据文件,用于进行数据驱动

2.4 创建工程模板 

在python项目脚本目录里创建一个httprunner的项目空白模板。

cmd或 zsh进入到Python工作目录-->输入以下命令:

hrun --startproject mydemo项目名称 # 2.X版本
httprunner startproject demoName项目名称 # 3.X版本

 结果如下图所示:

 2.5 参数说明

api/demo_api.yml

https://www.cnblogs.com/123anqier-blog/p/13093266.html

 2.6 har2case命令

1.抓包导出har文件

使用抓包工具导出har格式记录文件

2.通过

har2case get_token.har -2y    yaml格式的测试用例

har2case get_token.har -2j     json格式的测试用例

3.附加参数

你可以使用filter参数,过滤url包含的内容,如只转包含127.0.0.1的url请求

har2case demo.har --filter 127.0.0.1

参考资料:

https://www.cnblogs.com/123anqier-blog/p/13093266.html

https://www.cnblogs.com/pingguo-softwaretesting/p/13202377.html

https://juejin.cn/post/7003668649185640462

https://www.freesion.com/article/6636868913/

https://www.cnblogs.com/may18/p/12490617.html

https://www.jianshu.com/p/9a00f49e2223

https://www.bilibili.com/video/BV1N34y1S7if?p=2&spm_id_from=pageDriver

部分内容来自于学习编程期间收集于网络的免费分享资源和工作后购买的付费内容。 如需获取教程配套的资源文件和一对一专属答疑支持,请加vx:kangmf24联系作者。
原文地址:https://www.cnblogs.com/MarlonKang/p/15475906.html