接口测试 怎么样从上一个接口的 response 中获取数据作为下一个接口的参数进行请求

董春霞 · 2017年02月16日 · 最后由 酷火 回复于 2018年03月01日 · 11061 次阅读

我现在是在做一个简单的接口测试,注册和登录接口,用户注册成功后,从 response 中获取用户名和密码,作为参数请求登录接口,下面是我的设置。
这是我的注册接口设置:
1.body 注册用户传入参数设置

2.body 的 tests 中设置变量,从 response 中获取数据的设置

这是我的登录接口设置:
1.

可是最后返回来的数据是这样:

设置的变量没有被当做变量,我的代码哪里写错了,还是哪里没有设置,求助各位大神,谢谢。

共收到 16 条回复 时间 点赞

先确认注册有执行么?还有 data.name 有值没有

#1 楼 @xwgoss 注册有值返回,看图
怎么写代码可以看到 data.name 有值没有

你没有 environment
postman 这个做的不好,要有一个 environment,这样你前面才能写进去,后面才能取到。

为什么不直接写代码呢...

用的 jmeter,有这个功能。

#4 楼 @among29 我在注册哪里不是写了 postman.setEnvironmentVariable("name", data.name);这句不是设置环境变量吗?还需要怎么样设置啊

#7 楼 @dongcx 不是你代码里面的。
是右上角的那个,新建并选中一个 environment。

#8 楼 @among29 好的,明白了,成功了,谢谢

觉得 postman 这块应该改进下,设定一个 缺省的 environment,不管选不选,都在缺省的 default environment 中。
这样,对于这样自己生成,自己用的变量,可以直接使用。

试试全局变量,如下:

我之前用的这个是好使的 取的时候{{xxx}}

楼主,这个就是设置 environment 中参数,然后使用变量就可以了。
首次使用的,要在你截图的右上角的位置(如下图)设置 environment 就可以了

代码解决

董春霞 回复

亲,我试过设置环境变量,可是为啥没有传进去呢?

你好~解决了吗?我遇到同样的困惑!求帮忙~~~374583289

@dongcx @among29 ,· 8 楼 · February 16, 2017

#7 楼 @dongcx 不是你代码里面的。
是右上角的那个,新建并选中一个 environment。
这个 environment 里面是怎么写 key 和 value 的值的?

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