1.安装
pip3 install httprunner==3.1.9
2.创建httprunner测试引擎

安装完成后会自带hrun,httprunner命令,用于运行测试用例,管理操作等.
3.项目结构
api目录:用于存放接口的最小单元(正向用例)
reports目录:存放测试报告
testcases:处理接口的复杂执行逻辑,如接口依赖的用例
testsuites:用于批量执行用例,可以实现数据驱动测试
.env:存放全局环境变量
debugtalk.py:定义python函数,处理动态参数
4.接口示例
test_engine/api/login_api.yml
- # name 指定当前用例名称
- name: 登录接口
- # variables:指定当前文件中用例的变量
- variables:
- username: jeanet
- pwd: 123456
- # request:指定当前接口的配置信息
- request:
- url: http://127.0.0.1:8000/projects/projects/
- method: GET
- headers:
- Authorization: "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNjU4MzEzMTEzLCJpYXQiOjE2NTgzMDk1MTMsImp0aSI6IjViOWU0Y2IyMzIxYTQxYmU5MjhlOGNlNDVjNGVlMjM2IiwidXNlcl9pZCI6MX0.HRERsmwZxmmo2vjCO2B0DRMhPvLsACHc7OCllClXPRc"
- # 指定请求体为json格式数据时的请求头
- Content-Type: "application/json"
- # 指定请求体为form表单格式数据时的请求头
- # Content-Type: "application/x-www-form-urlencoded"
- # json: 指定请求体为json格式数据
- # json:
- # username: $username
- # password: $pwd
- # data:指定请求体为form表单格式数据
- # data:
- # username: $username
- # password: $pwd
-
- # params: 指定路径中的查询字符串参数格式
- params:
- page: 1
- size: 3
- # validate:指定校验器
- validate:
- - eq: ["json.results.0.id", 8]
5.执行测试
5.1 hrun xx命令行执行
hrun 用例文件的绝对路径
hrun xxxx/test_engine/api/login_api.yml

5.2 python程序执行
创建执行文件test_engine/run.py
- from httprunner.api import HttpRunner
-
- hrun = HttpRunner()
- hrun.run(r'/Users/jeanettian/test_platform/test_platform/test_engine/api/login_api.yml')
- print(hrun._summary)
运行

6.base_url:
当设置了base_url后,在request部分的url无需使用$base_url,在测试时如果检测到有base_url变量,会自动进行拼接.

7 .env中的环境变量使用

通过${ENV(变量名)}引用.env文件中定义的全局环境变量
