学习建议:在学习httprunner3.x版本之前,最好是学习过python,pytest,allure,locust,requests,git操作,这样可以更快的入手,有问题请留言,或者加群反馈。
--成都-阿木木
**欢迎加入测试交流群:自动化测试-夜行者(816489363)进行交流学习QAQ**
1、环境准备
安装httprunner
pip install httprunner -i https://pypi.douban.com/simple
使用hrun -V 查看httprunner版本,我的是3.1.4
查看帮助信息:httprunner --help
positional arguments:
{run,startproject,har2case,make}
sub-command help
run Make HttpRunner testcases and run with pytest.运行httprunner文件
startproject Create a new project with template structure.创建httprunner项目结构
har2case Convert HAR(HTTP Archive) to YAML/JSON testcases for HttpRunner.转换har文件为yml文件或者json文件或者pytest文件
make Convert YAML/JSON testcases to pytest cases. 转换yml或json文件为pytest文件
optional arguments:
-h, --help show this help message and exit 查看帮助信息
-V, --version show version 查看版本
2、创建项目
cmd到项目文件下执行:httprunner startproject interfacedemo(interfacedemo是你的接口项目名称)
使用pycharm打开interfaceDemo:
各个目录代表的含义:
- debugtalk.py 放置在项目根目录下(借鉴了pytest的conftest文件的设计)
- .env 放置在项目根目录下,可以用于存放一些环境变量
- reports 文件夹:存储 HTML 测试报告
- testcases 用于存放测试用例
- har 可以存放录制导出的.har文件
- .gitignore 设置上传到git时需要忽略那些文件信息
运行官方提供的小例子:
在testcases下,有两个yml文件,在项目interfaceDemo的上级目录执行:
两种执行方式:
1、hrun interfaceDemo:命令等价于httprunner run interfaceDemo,其中先进行httprunner make json/yml,会将json/yml文件先转换为pytest文件,之后再执行hrun(httprunner run),如果pytest文件是已经存在的(你直接编写的pytest文件,而不是yml或者json),httprunner会直接运行你的pytest脚本,不需要进行转换,官方推荐:直接使用pytest脚本编写
在tacecases目录下生成了三个py文件,生成的py文件会加上_test后缀,如果yml或者json文件有修改,需要再次http make scriptPath一下,或者直接修改py文件
生成了logs日志文件,每一个yml都会对应生成一个日志文件如下,每一个testcase脚本都会又要给唯一的id,对应了日志文件的文件名:
2、pytest interfaceDemo(前提,已经使用hrun interfaceDemo生成了yml或json对应的pytest文件,否则不生效)
**欢迎加入测试交流群:自动化测试-夜行者(816489363)进行交流学习QAQ**