-2
Soap Ui APIレスポンスの指定されたタグ値を同じテストケースのgroovyスクリプトに転送します。これらの2つの間でプロパティ転送を試みましたが、レスポンスのデータ全体が貼り付けられます誰も私に良いIdeaを提案することはできますか?ありがとうございます。プロパティ転送In Soap Ui
Soap Ui APIレスポンスの指定されたタグ値を同じテストケースのgroovyスクリプトに転送します。これらの2つの間でプロパティ転送を試みましたが、レスポンスのデータ全体が貼り付けられます誰も私に良いIdeaを提案することはできますか?ありがとうございます。プロパティ転送In Soap Ui
サンプルをxml
として説明していますので、サンプルは提供されていません。以下、要求を実行するには
が応答XMLです:
今<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<ConversionRateResponse xmlns="http://www.webserviceX.NET/">
<ConversionRateResult>0.005</ConversionRateResult>
</ConversionRateResponse>
</soap:Body>
</soap:Envelope>
、ConversionRateResult
要素の値を取得する方法をお見せし、他のテスト手順でアクセスすることが利用できるようになります。 キーは、テストケースレベルのカスタムプロパティで指定された要素の値を、property expansion
を使用してアクセスできる、テストケースの要求ステップにScript Assertion
を使用して格納することです。
スクリプトアサーション:プロパティの拡張を使用して同じテストケースのテスト手順を以下にRATEにアクセスする方法
//Check if the response is not empty
assert context.response
//Closure to get the any element value(non-repeting)
def searchData = { data, elementName ->
data.'**'.find{ it.name() == elementName}
}
//Create object for the response
def parsedXml = new XmlSlurper().parseText(context.response)
//Call the above closure to get the value of ConversionRateResult which is 0.005 in above response
log.info searchData(parsedXml, 'ConversionRateResult')
//Store it at test case custom property called RATE
context.testCase.setPropertyValue('RATE', searchData(parsedXml, 'ConversionRateResult') as String)
?
Request
タイプステップの場合は、を使用してください。 context.expand('${#TestCase#RATE}')
またはcontext.testCase.getPropertyValue('RATE')
:たとえば、あなたは、テストステップが
Groovy Script
のであれば、以下のいずれかを使用し、<element>${#TestCase#RATE}</element>