【发布时间】:2014-05-08 03:37:02
【问题描述】:
我需要知道是否可以在 XPath 匹配配置的 XPath 表达式面板中使用数据源属性。例如,如果我们有以下 XML 文档:
<ns1:Ions>
<ns1:Ion>UI</ns1:Ion>
<ns1:IonType>X</ns1:IonType>
<ns1:StartDate>2010-05-10</ns1:StartDate>
</ns1:Ions>
<ns1:Ions>
<ns1:Ion>HH</ns1:Ion>
<ns1:IonType>RI</ns1:IonType>
<ns1:StartDate>1998-11-23</ns1:StartDate>
</ns1:Ions>
<ns1:Ions>
<ns1:Ion>CF</ns1:Ion>
<ns1:IonType>A</ns1:IonType>
<ns1:StartDate>2000-06-10</ns1:StartDate>
</ns1:Ions>
我需要评估 IonType 的内容是否是 'A' 仅当其兄弟节点 Ion 的值为 'CF '。我希望通过如下设置 XPath 匹配配置来实现这一点:
XPath 表达式(DataSourceInput#ION 是 'CF')
declare namespace ns1='http://my.namespace.com';
//ns1:Ions[ns1:Ion[text()=${DataSourceInput#ION}]]/ns1:IonType/text()
预期结果(DataSourceInput#ION_TYPE 为“A”)
${DataSourceInput#ION_TYPE}
运行测试会导致 SoapUI [Pro] 出错,Missing content for xpath declare。如果我将${DataSourceInput#ION} 替换为实际值,即'CF',则测试会相应地工作(我什至尝试在${DataSourceInput#ION} 周围加上单引号,但它不起作用)。
在 SoapUI 中是否有另一种方法来实现这一点?
【问题讨论】:
标签: xpath properties soapui