我需要执行邮递员测试的帮助,该测试需要另一个测试的响应输出。我已经与各种论坛进行了核对,但是没有针对此特定方案的解决方案。
例
测试1回应:
{
"items": [
{
"email": "archer+qa01@gmail.com",
"DocumentName": "tc",
"type": "URL",
"url": "https://localhost:8443/user/terms?statusno=a5f2-eq2wd3ee45rrr"
}
]
}
Run Code Online (Sandbox Code Playgroud)
测试2:
我只需要使用来自的a5f2-eq2wd3ee45rrr
部分响应数据Test 1
,可以在url
上面的值中看到。我需要在内部使用此值Test 2
如何与邮递员一起工作?
不能完全确定问题的响应数据格式是什么,但是如果它是仅带有url
属性的简单对象,则可以使用如下所示的简单方法:
var str = pm.response.json().url
pm.environment.set('value', str.split('=', 2)[1])
Run Code Online (Sandbox Code Playgroud)
然后,这将为变量设置所需的值,以便在下一个请求中使用{{value}}
POST请求正文中的语法,或者pm.environment.get('value')
在其中一个测试脚本中使用。
编辑:
如果该url
属性在数组中,则可以遍历这些属性并以这种方式提取值。这将设置变量,但是如果url
数组中有多个属性,它将设置找到的最后一个属性。
_.each(pm.response.json(), (arrItem) => {
pm.environment.set('value', arrItem[0].url.split('=', 2)[1])
})
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2578 次 |
最近记录: |