【发布时间】:2019-04-23 01:40:15
【问题描述】:
我有几个请求作为我的集合的一部分,并希望使用 JSON 响应输出中的值设置一个环境变量。
此变量未在 管理环境 部分中定义。
我必须首先在 Manage Environments 部分下声明环境变量吗?
如果我确实在 Manage Environments 部分中声明了它,那么它正在工作^
const jsonData = pm.response.json();
pm.environment.set('sessionId', jsonData.sessionId);
我的另一个问题是我不知道为什么会这样?
我的一个请求中有以下代码 sn-p:
{
"sessionid": "15c3f72e-788f-423f-b1cc-5dca503ae859",
"expires": "2019-02-17T20:57:20.24234222-08:00",
"cookievalue": "MySession"
}
pm.test("Check if session id is returned"), function() {
pm.expect(pm.response.text()).to.include("sessionid2");
}
我很惊讶为什么这会起作用?
它应该会失败,因为我在 JSON 响应中没有 sessionid2。
我尝试了所有其他方法,包括pm.response.json(),但没有任何效果。
顺便说一句,我如何测试以查看密钥是否存在于 JSON 响应中,而不一定要检查值,因为会话 id 值可能每次都更改?
除了文档之外,有人可以向我指出一个很好的资源来了解有关 Postman 脚本的更多信息吗?
【问题讨论】:
标签: postman postman-collection-runner