首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Groovy根据前面的节点属性复制属性值

使用Groovy根据前面的节点属性复制属性值
EN

Stack Overflow用户
提问于 2015-09-30 13:17:38
回答 1查看 219关注 0票数 0

我试图用Groovy在SoapUi中做一些事情,但它不起作用。

我有多个具有多个属性的节点,我需要根据父属性提取子节点属性

例如:

代码语言:javascript
复制
<library id="82389389">
    <book id="123" bookType="SF">
        <price id="325" priceValue="5"/>
    </book>
    <book id="4741" bookType="History">
        <price id="12388" priceValue="15"/>
    </book>
    <book id="2626" bookType="Drama">
        <price id="12145" priceValue="40"/>
    </book>
</library>

在这个XML中,我需要基于priceValue提取bookType并在其他地方使用它(图书节点的顺序正在改变)

我试过了,但没有用:

代码语言:javascript
复制
def response = .../library[1]

def i=0
def records = new XmlSlurper().parseText(response)
def size = records.book.size()

for (i=0,i<size,i++)
{
    bookType1 = records.book[i].@bookType.first().value().text();
    if (bookType1 == 'History')
    {
        def priceValueBook = records.book[i].price.@priceValue.first().value().text()
        log.info priceValueBook 
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-30 14:08:23

目前还不清楚在什么时候尝试这样做,但在SoapUI脚本步骤中可以执行以下操作:

代码语言:javascript
复制
context.expand('${test_step#Response#//*:book[@bookType="History"]/*:price/@priceValue}')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32867164

复制
相关文章

相似问题

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