首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在soapUI中使用断言与外部属性匹配

如何在soapUI中使用断言与外部属性匹配
EN

Stack Overflow用户
提问于 2018-02-08 15:10:36
回答 1查看 391关注 0票数 1

我有一个包含以下测试步骤的测试用例:

  • (JDBC) LoadTestDataStep
  • (传输) GetPropertyStep
  • (皂) SoapRequestStep

在LoadTestDataStep中,我从JDBC数据库加载一些数据,这些数据将在稍后的“SoapRequestStep”中使用。

GetPropertyStep允许我从LoadTestDataStep结果中检索数据,并将它们放入SoapRequestStep请求。

现在,在SoapRequestStep中,我想断言一些xpath的计算值与我在LoadTestDataStep中检索的一些数据匹配。

我希望我能让自己理解。

这就是JDBC的结果:

代码语言:javascript
运行
复制
<Results>
    <ResultSet fetchSize="10">
        <Row rowNumber="1">
            <DRV_DVR_ID>46259976</DRV_DVR_ID>
            <CUST_DPT>00025888</CUST_DPT>
        </Row>
    </ResultSet>
</Results>

这是SOAP结果(简化):

代码语言:javascript
运行
复制
<chargeCard chargeSequence="1353" businessAccountId="1520444" ownershipType="N" meanOfPaymentCode="EPPV" cashOrChargeFlag="CH" custdept="982-1602"/>

我想断言来自JDBC的CUST_DPT = soap响应中的custdept属性。

问题是,在SoapStep中,我不能对此soap步骤之外的内容进行断言。

EN

回答 1

Stack Overflow用户

发布于 2018-02-09 09:32:34

“问题是,在SoapStep中,我不能针对这个soap步骤之外的东西进行断言”是的,您可以从另一个步骤对某个东西进行断言。

在您的步骤的'(SOAP) SoapRequestStep‘脚本断言中,您可以按照.这样的方式执行JDBC步骤的响应。

代码语言:javascript
运行
复制
def jdbsResponseAsXml = context.expand( '${(JDBC) LoadTestDataStep#ResponseAsXml#//Results[1]}' )

def slurper = new groovy.json.JsonSlurper()
def jdbcJson = slurper.parseText(jdbsResponseAsXml );

通过上述步骤,您将在'(SOAP) SoapRequestStep‘脚本断言中以JSON形式获得jdbc结果。

然后,您需要找到感兴趣的节点并进行比较。

此外,这是我自己的偏好,我倾向于不以这种方式编写断言的脚本。相反,在这两个感兴趣的步骤之后,我将创建一个新的Groovy脚本测试步骤,在这个步骤中,我将从感兴趣的步骤中提取数据并在其中断言。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48688702

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档