4.3 请求头
请求头
实现原理, 经过内部处理之后拿到单元格的内容并转换成Dict
数据,和config.yaml
中的requestt_header
进行合并(update)
,再用合并之后的Dict
去发送请求。
前置处理
使用变量
来源: 响应提取
,后置SQL结果
使用$变量名
的方式来引用变量
使用函数
来源:thooks.py
定义的函数
调用无参方法:${方法名()}
调用有参方法:${方法名(参数)}
经过上面两道工序处理之后,返回的header
字典,将和基准header
合并。
config.yaml
...
# 基准的请求头信息
request_headers:
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36
...
请求头单元格有内容
用例数据
用例标题 | 是否跳过 | 请求头 | 请求地址 | 请求方式 | 入参关键字 | 上传文件 | 请求数据 | 提取参数 | 后置SQL | 预期结果 |
---|---|---|---|---|---|---|---|---|---|---|
get登录1 | FALSE | {"c1": "c1添加的请求头"} | login | get | params | {"username": "admin", "password": ""} | {"msg":"$.meta.msg"} | {"$.meta.status":400} |
最终请求时
,请求头如下
{
"Accept-Encoding": "gzip, deflate",
"Accept-Language": "zh-CN,zh;q=0.9",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36",
"c1": "c1添加的请求头"
}
请求头单元格无内容
用例数据
用例标题 | 是否跳过 | 请求头 | 请求地址 | 请求方式 | 入参关键字 | 上传文件 | 请求数据 | 提取参数 | 后置SQL | 预期结果 |
---|---|---|---|---|---|---|---|---|---|---|
get登录1 | FALSE | login | get | params | {"username": "admin", "password": ""} | {"msg":"$.meta.msg"} | {"$.meta.status":400} |
最终请求时
,请求头如下
{
"Accept-Encoding": "gzip, deflate",
"Accept-Language": "zh-CN,zh;q=0.9",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36",
}
该单元格支持引用$变量
,${函数名()}
,${函数名(参数)}