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文件中定义的全局环境变量

8.debugtalk.py的使用
9.testcases的使用
test_engine/api/login_api.yml
# name 指定当前用例名称
name: 登录接口
base_url: ${ENV(base_url)}
# variables:指定当前文件中用例的变量
variables:
username: ${ENV(USERNAME)}
pwd: ${ENV(PASSWORD)}
# request:指定当前接口的配置信息
request:
url: /user/login/
method: POST
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: ["status_code", 200]
test_engine/api/projects_list_api.yml
name: "获取项目列表数据接口"
variables:
base_url: ${ENV(base_url)}
token: $token
request:
url: $base_url/projects/projects
method: GET
headers:
Authorization: "Bearer $token"
Accept: "application/json"
params:
page: 2
size: 3
validate:
- eq: ["status_code", 200]
test_engine/testcases/project_list_case.yml
config:
name: "获取项目列表数据接口测试"
variables:
username: ${ENV(USERNAME)}
password: ${ENV(PASSWORD)}
base_url: ${ENV(base_url)}
teststeps:
-
name: "先登录"
api: test_engine/api/login_api.yml
variables:
user_agent: 'iOS/10.3'
extract:
- token: content.token
-
name: "获取项目列表数据接口"
api: test_engine/api/projects_list_api.yml
运行测试

- testsuites使用
可批量执行测试用例,可数据驱动
test_engine/testsuites/all_testsuite.yml

test_engine/api/login_api.yml

csv及debugtalk.py函数进行参数化



Original: https://blog.csdn.net/qq_40132294/article/details/125882969
Author: chuntian_tester
Title: HttpRunner–安装使用
相关阅读
Title: 数据分析案例-基于随机森林算法探索影响人类预期寿命的因素并预测人类预期寿命
目录
1.项目背景
从古至今,人们都想为自己和家人长寿。预计它也会长寿,比南山更长寿。随着医疗的进步,人们的平均预期寿命正在缓慢增加。全球平均预期寿命现在为73.2岁,而1950年为47岁。
[En]
From ancient times to the present, people want to live a long life for themselves and their families. It is also expected to live a long life and live longer than Nanshan. With the progress of medical treatment, the average life expectancy of people is slowly increasing. The average global life expectancy is now 73.2 years, compared with 47 years in 1950.
平均预期寿命是在一定的年龄别死亡率水平下,活到确切年龄X 岁以后,平均还能继续生存的年数,它是衡量一个国家、民族和地区居民健康水平的一个指标。可以反映出一个社会生活质量的高低。社会经济条件、卫生医疗水平限制着人们的寿命。所以不同的社会,不同的时期,人类寿命的长短有着很大的差别;同时,由于体质、遗传因素、生活条件等个人差异,也使每个人的寿命长短相差悬殊。
这一指标与性别、年龄、种族密切相关,往往需要单独计算。平均预期寿命是我们最常用的预期寿命指数,它表明了新生儿的平均存活年限,也是衡量人口健康的重要指标。
[En]
This indicator is closely related to gender, age and race, so it often needs to be calculated separately. Average life expectancy is our most commonly used index of life expectancy, which indicates the average number of years that newborns can survive, and is an important indicator of population health.
寿命的长短受两方面的制约。一方面,社会经济条件、卫生医疗水平限制着人们的寿命,所以不同的社会,不同的时期,寿命的长短有着很大的差别;另一方面,由于体质、遗传因素、生活条件等个人差异,也使每个人的寿命长短相差悬殊。因此,虽然难以预测具体某个人的寿命有多长,但可以通过科学的方法计算并告知在一定的死亡水平下,预期每个人出生时平均可存活的年数。这就是平均预期寿命。
因此,它在探索影响人类预期寿命的因素和预测预期寿命方面起着至关重要的作用。
[En]
Therefore, it plays a vital role in exploring the factors that affect human life expectancy and predicting life expectancy.
2.项目简介
2.1项目内容
这个项目是世界卫生组织(世卫组织)建立了一个关于所有国家一段时间内健康状况的数据集,包括预期寿命、成人死亡率等统计数据。利用这个数据集,探索各个变量之间的关系,通过数据集建立模型来预测预期寿命,找出影响预期寿命的最大因素是什么?
[En]
This project is that World Health Organization (WHO) established a data set on the health status of all countries over a period of time, including statistics on life expectancy, adult mortality and so on. Using this data set, explore the relationship between various variables, establish a model through the data set to predict life expectancy and find out what are the biggest factors affecting life expectancy?
本项目主要解决以下问题:
[En]
This project mainly solves the following problems:
-
最初选择的各种预测因素是否真的影响预期寿命?实际影响预期寿命的预测变量有哪些?
-
预期寿命值低于(
Original: https://blog.csdn.net/m0_64336780/article/details/125597722
Author: 艾派森
Title: 数据分析案例-基于随机森林算法探索影响人类预期寿命的因素并预测人类预期寿命
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/287527/
转载文章受原作者版权保护。转载请注明原作者出处!