使用 SoapUi 模拟 2 个变量的响应
Mocking response with 2 variables using SoapUi
使用 SoapUi 模拟响应时是否可以检查两个或多个变量?
这是请求的示例:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:crm="http://www.example.com/project/wsdl/crm/">
<soap:Body>
<crm:SearchCustomer>
<FirstName>Francis</FirstName>
<LastName>Zabala</LastName>
</crm:SearchCustomer>
</soap:Body>
</soap:Envelope>
这是提取的 Xpath
declare namespace crm='http://www.example.com/project/wsdl/crm/';
declare namespace soap='http://www.w3.org/2003/05/soap-envelope';
//crm:SearchCustomer[1]/FirstName
期望值:
Francis
如果我也想查看姓氏怎么办?
您可以尝试使用以下 XPath 表达式检查 <FirstName>
和 <LastName>
的文本内容并使用 boolean()
XPath函数来检查表达式是否完成。 SOAPUI 还支持使用 *
作为命名空间的通配符,因此您的表达式可以是:
boolean(//*:FirstName[text() = 'Francis'] and //*:LastName[text() = 'Zabala'])
和预期值一样:
true
使用 SoapUi 模拟响应时是否可以检查两个或多个变量?
这是请求的示例:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:crm="http://www.example.com/project/wsdl/crm/">
<soap:Body>
<crm:SearchCustomer>
<FirstName>Francis</FirstName>
<LastName>Zabala</LastName>
</crm:SearchCustomer>
</soap:Body>
</soap:Envelope>
这是提取的 Xpath
declare namespace crm='http://www.example.com/project/wsdl/crm/';
declare namespace soap='http://www.w3.org/2003/05/soap-envelope';
//crm:SearchCustomer[1]/FirstName
期望值:
Francis
如果我也想查看姓氏怎么办?
您可以尝试使用以下 XPath 表达式检查 <FirstName>
和 <LastName>
的文本内容并使用 boolean()
XPath函数来检查表达式是否完成。 SOAPUI 还支持使用 *
作为命名空间的通配符,因此您的表达式可以是:
boolean(//*:FirstName[text() = 'Francis'] and //*:LastName[text() = 'Zabala'])
和预期值一样:
true