如何将响应中的 id 用于下一个请求端点?

How to use the id from the response into the next request endpoint?

我正在使用 SOAPUI,目前正在将响应 id 保存到名为 id 的全局 属性 中。

这是我在全局保存的内容属性:

{"id": "vnjGZxXVqlwGga6UVXIAhQQ7JpI="}

//imports
import groovy.json.JsonSlurper

//grab the response
def ResponseMessage = messageExchange.response.responseContent
//define a JsonSlurper
def jsonSlurper = new JsonSlurper().parseText(ResponseMessage)

def id = jsonSlurper.id
// sets the global property called PackageId
com.eviware.soapui.SoapUI.globalProperties.setPropertyValue("PackageId", id)

现在我想在下一个请求中使用该 ID,例如 - test。com/api/{id}

我将如何在 SOAPUI 中执行此操作?我尝试了一些关于但我似乎不明白的事情

这就是我正在尝试但没有运气的方法:

测试.com/api/{$id}

按照您的操作方式,存储到全局变量中,您需要使用如下语句:

def recovered_id= context.expand('${#Global#PackageId}' )

根据其范围,您可以将其存储在较低级别(testCase 或 testSuite 级别)

如果它位于单个测试用例中,您可以 return 您的 groovy 脚本末尾的值,然后直接引用测试步骤的结果调用它以避免使用自定义属性。

亚历山大