HttpRunner学习笔记

一、HttpRunner 2.x项目工程结构

1、版本选择

安装2.5.7版本,3.x版本暂时还不稳定,有很多bug,所以先用2.x版本

pip install httprunner==2.5.7

2、运行命令

安装完成后,会自带httprunner、hrun命令,用于运行用例、管理操作;
生成项目目录:

hrun --startproject HttpRunnerDemo

运行用例:

hrun filepath/testcase.yml

3、项目结构

  • api目录:用于存放接口的最小单元(正向用例)
  • reports目录:用于存放测试报告
  • testcases目录:用于处理接口复杂的执行逻辑;处理接口依赖
  • testsuites目录:用户批量执行用例,可以实现数据驱动测试
  • .env文件:用于存放全局环境变量
  • debugtalk.py文件:用于定义python函数,处理动态参数

二、yaml文件格式简要说明

httprunner框架一般只需要维护yaml文件即可,简单介绍下yaml文件的基本规范和写法

  • yaml配置文件的后缀为.yml或者.yaml
  • yaml中使用#作为注释,注释只能在某一行的前后,不能与key\value在同一行
  • yaml中有两种结构,一种是key: value,value与冒号之间必须有空格,另一种是 - key: value,“-”为列表结构
  • 同一级条目前缩进必须一致;(一般都是2个空格)
  • yaml中如果value使用引号(单引号或者双引号),那么该value为字符串类型
  • 如果value中只要有字母,哪怕没有添加引号,一般也会识别为字符串类型(false、true、on、off、null除外)
  • value中为纯数字或者小数,会被识别为int或float类型

三、api

api目录中存放接口yaml文件,具体解释如下:

# name指定当前用例名称
name: "登录login接口"

# 设置基本路径,运行时会自动与下面的url拼接在一起
base_url: "http://127.0.0.1:8000"

# variables设置变量
# a.指定当前用例的局部变量
# b.可以在变量定义的下方任意地方调用
# c.使用$变量进行调用
# d.作用域为当前yaml文件,变量定义的下方,不能跨yaml文件进行调用
variables:
    username: value1
    password: value2
    
# request定义当前接口的配置信息,请求参数名称与requests模块完全兼容
request:
	# 指定当前接口的url地址,如果在全局指定了base_url,那么会自动拼接base_url
    url: "/user/login/"
    # method指定当前接口的请求方法名称,请求方法有:GET、POST、PUT、DELETE、PATCH,不区分大小写
    method: POST
    # 指定请求头参数
    headers:
        Content-Type: "application/json"
    	# 可以在项目根路径下的debugtalk.py文件中,定义python函数或者类,用于处理动态参数
    	User-Agent: "${random_generate_uagent()}"
    # 指定请求体为json格式的参数
    json:
        key: $var2
        
    # 如果指定x-www-form-urlencoded参数就用data
    # data:
        # username: "$username"
        # password: "$password"
        
# validate指定断言
validate:
 	# eq为断言类型,断言实际值与期望值是否相等
    # 完整形式为"equals",也可以使用"eq", "equals", "==", "is"
	# 除eq外还有其他断言类型,如:lt、le、gt、ge、ne等等,contains:判断实际值是否包含期望值,contained_by:判断实际值是否包含在期望值中
    - eq: ["status_code", 200]
    # 方括号中,第一个参数为实际值,第二个参数为期望值
    - contains: ["json", "username"]
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

克里斯蒂亚诺·罗纳尔达

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值