我有一个包含以下测试步骤的测试用例:
在LoadTestDataStep中,我从JDBC数据库加载一些数据,稍后我将在' SoapRequestStep'
中加载GetPropertyStep允许我从LoadTestDataStep结果中检索数据并将它们放入SoapRequestStep请求。
现在在SoapRequestStep中,我想声明对某些xpath的评估与我在LoadTestDataStep中检索的一些数据匹配
我希望自己能理解。
这是JDBC的结果:
<Results>
<ResultSet fetchSize="10">
<Row rowNumber="1">
<DRV_DVR_ID>46259976</DRV_DVR_ID>
<CUST_DPT>00025888</CUST_DPT>
</Row>
</ResultSet>
</Results>
这是SOAP结果(简化):
<chargeCard chargeSequence="1353" businessAccountId="1520444" ownershipType="N" meanOfPaymentCode="EPPV" cashOrChargeFlag="CH" custdept="982-1602"/>
我想声明来自JDBC的CUST_DPT
=来自soap响应的custdept
属性。
问题是在SoapStep中我无法断言这个肥皂步骤之外的东西
答案 0 :(得分:1)
&#34;问题是在SoapStep中我无法断言这个肥皂步骤外面的东西&#34;是的,你可以从另一个步骤中断言。
在您的步骤&#39;(SOAP)SoapRequestStep&#39;脚本断言,您可以通过执行某些操作来提取JDBC步骤的响应。
def jdbsResponseAsXml = context.expand( '${(JDBC) LoadTestDataStep#ResponseAsXml#//Results[1]}' )
def slurper = new groovy.json.JsonSlurper()
def jdbcJson = slurper.parseText(jdbsResponseAsXml );
通过上述步骤,您将在&#39;(SOAP)SoapRequestStep&#39;中获得JSON形式的jdbc结果。脚本断言。
然后您需要找到感兴趣的节点并进行比较。
此外,这是我自己的偏好,我倾向于不以这种方式编写断言。相反,在感兴趣的两个步骤之后,我将创建一个新的Groovy脚本测试步骤,在那里我将从感兴趣的步骤中提取数据并在那里断言。