HttpRunner 请问一下,使用 HttpRunner 进行接口自动化,有一个参数需要用到所有的接口中,请问一下应该怎么处理?

Yellow · 2019年12月20日 · 最后由 Ouroboros 回复于 2019年12月20日 · 3014 次阅读

背景

通过登录接口获取到 Cookie 属性值,该属性值需要赋值到平台中其余所有接口 ---- 接口是按照一个 yaml 文件对应一个接口的形式管理的,才能使接口正常请求。

问题

通过什么方式,可以把登录接口中获取到的所有 Cookie 属性值,赋值给到所有的接口请求参数中。麻烦知道的朋友解答一下,非常感谢。

共收到 9 条回复 时间 点赞

其他接口之前调下登录接口,return Cookie 不行么

写入环境变量

Ouroboros 回复

我的登录接口是封装的一个方法,是通过 selenium+ 获取登录接口验证码实现的,所以调用这个方法成功以后是会返回 cookie,你的思路我想过 ,只是每次都要调用一次登录接口,太耗内存,而且跑一次下来时间也很长了。

JKzhishui 回复

谢谢,我试一试。

如果是自己公司的系统,验证码可以从缓存拿,cookie 也是头的一部分,可以从响应体中把头的 cookie 取下来放在接下来需要鉴权的请求头内

战 神 回复

平台是自己公司开发的,但是登录页是别人公司做的统一权限认证,不过登录的已经实现了,cookie 也可以拿到,我的问题主要是不知道怎么把这一个 cookie 一次性应用到所有的请求接口里面。

Yellow 回复

cookie 本来就是 header(消息头)的一部分,你把获取到的 cookie 放到 header 里就好了
https://testerhome.com/articles/19976

战 神 回复

明白了,谢谢。

Yellow 回复

不想每次调,保存到哪儿就行,随用随取,直到失效。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册