HttpRunner 接口自动化简单实践
HttpRunner是一款接口测试开源框架,简洁优雅,是做接口自动化测试很不错的选择
声明:
完整的使用手册请转到 http://cn.httprunner.org/
项目源码:https://github.com/HttpRunner/HttpRunner
1、安装
1.1 命令行pip直接安装就好
1.2 验证安装
命令行输入hrun -V,返回项目版本信息则表明安装成功
2、新建测试项目
这里我用直接通过框架的脚手架工具命令生成目录结构
如:hrun --startproject BaseAccApiTest
这样我们就在当前目前目录下建立了一个测试项目BaseAccApiTest:
3、一个测试用例demo
用例文件描述、detalk文件描述、测试执行方法描述、测试报告描述(内容、log、参数响应等等)
3.1)在BaseAccApiTest\testcases目录下新建一个yml用例文件
3.2)编写用例
我们在新建的yml文件中编写用例信息,如上图:
- config全局配置项,用于配置此文件中所有用例的公共参数
- 一个test表示一条具体用例
- 在debugtalk.py文件配置所有yml文件公用的参数,如:测试服务域名
3.3)用例执行
命令行下,通过hrun执行指定用例文件。如下图所示:用例执行通过,并在当前目录生成测试报告目录及html测试报告
3.4)测试报告
我们在测试报告目录下查看html测试报告
- 测试报告summary模块中会详细展示测试的执行时间、耗时、用例总数及成功的数量等信息
- 测试报告detail模块会展示测试用例的详细执行信息
点开log我们可以看到具体的传参及响应等信息:
5、高级功能
1)用例分层
在我们上面的实例中,新建的项目有两个文件夹没有用到api及suite,他们是干嘛用的呢?
请参考原作者对测试用例分层的描述:
https://testerhome.com/topics/11356
2)报告邮件发送(修改源码)
在查看http指导文档时,看到作者有简单的介绍了下调用邮件服务做接口监控,也就是定时构建并发送测试报告的命令:
因习惯问题,我还是决定用之前框架的方法,直接调用发邮件的函数,只需做到以下几步就好:
将实现好邮件发送功能的mail.py文件丢到python的site-packages文件夹下面的httprunner目录下
在httprunner目录下的task.py文件run方法中加入调用mail中函数的代码
这里把邮件配置信息(发收件人等放在了mail文件中);运行看下结果
打开附件看看
3)压测
httprunner通过直接复用python的开源测试框架LOCUST(关于LOCUST,请点这里)
安装完locust后,我们可以直接执行命令来对yml用例中的接口进行压测:
web监控器启动成功,我们点击转到locust的web页面
配置压测参数:
查看压测结果:
压测结果分析及locust工具的使用暂且不表
版权声明:本文为人工博客的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
本文链接:https://www.gzcx.net/article/57