SoapUI相关(属性转)
SoapUI correlation (property transfer)
我有一个响应如下的 REST 请求:
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlQwWE8xNnAtMmZzMWxremV5",
"expires_in": 2592000,
"token_type": "Bearer"
}
我想获取 access_token
的值,将其存储在 属性 中,并在两个后续请求中重复使用。
按照一些教程 here,当 运行 获得 access_token
的请求时,我得到一个:
error parsing target property: error unexpected element CDATA
但是为什么呢?
我的原始回复中没有 CDATA。
如果您在使用 transfer properties step
从响应中获取 JSON 值时遇到问题,可以使用 groovy test step
来实现您的目标。
因此创建一个 groovy test step
来解析您的响应,获取您的值并将其设置为 属性(例如在 testCase
级别),代码如下:
import groovy.json.JsonSlurper
// get response using the name of your test step
def response = context.expand('${REST Test Request#Response}')
// parse response
def jsonResp = new JsonSlurper().parseText(response)
// get the token an set as a property in the testCase
testRunner.testCase.setPropertyValue('access_token',jsonResp.access_token)
然后在另一个 testSteps
(REST 或 SOAP...)中,您可以使用以下代码获取您在 testCase
中设置的 access_token
值:
${#TestCase#access_token}
希望这对您有所帮助,
我有一个响应如下的 REST 请求:
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlQwWE8xNnAtMmZzMWxremV5",
"expires_in": 2592000,
"token_type": "Bearer"
}
我想获取 access_token
的值,将其存储在 属性 中,并在两个后续请求中重复使用。
按照一些教程 here,当 运行 获得 access_token
的请求时,我得到一个:
error parsing target property: error unexpected element CDATA
但是为什么呢?
我的原始回复中没有 CDATA。
如果您在使用 transfer properties step
从响应中获取 JSON 值时遇到问题,可以使用 groovy test step
来实现您的目标。
因此创建一个 groovy test step
来解析您的响应,获取您的值并将其设置为 属性(例如在 testCase
级别),代码如下:
import groovy.json.JsonSlurper
// get response using the name of your test step
def response = context.expand('${REST Test Request#Response}')
// parse response
def jsonResp = new JsonSlurper().parseText(response)
// get the token an set as a property in the testCase
testRunner.testCase.setPropertyValue('access_token',jsonResp.access_token)
然后在另一个 testSteps
(REST 或 SOAP...)中,您可以使用以下代码获取您在 testCase
中设置的 access_token
值:
${#TestCase#access_token}
希望这对您有所帮助,