SOAPUI - движок / синтаксический анализатор xpath кажется, что там не работают арт-операции - PullRequest
1 голос
/ 24 марта 2011

У меня следующая проблема.

Я отправляю запрос SOAP, и после получения ответа мне нужно «получить данные» из него, добавить «1» и отправить обратно как еще один запрос SOAP.

Мой SOAP-ответ на анализ выглядит так:

<multiRef id="id0" soapenc:root="0" >
         <name xsi:type="soapenc:string">basketId</name>
         <value xsi:type="soapenc:string">12</value>
      </multiRef>

Я хочу получить это 12 и добавить к нему 1: я делаю это в SOAP UI с помощью XPATH, вставленной в новый запрос (я не хочу использовать что-либо еще). Чистый XML нового запроса выглядит так:

<multiRef id="id1" soapenc:root="0" >
    <name xsi:type="soapenc:string">basketId</name>
    <value xsi:type="soapenc:string">${GetBasketID_3#Response#//multiRef[name="newBasketId"]/value/text() +1 }</value>
</multiRef>

выражение xpath:

//multiRef[name="newBasketId"]/value/text() + 1 

С xpathchecker в Firefox это работает, но SOAP UI отправляет туда пустое значение. Как сделать так, чтобы синтаксический анализатор push SOI UI работал или написать выражение xpath в рабочем режиме?

1 Ответ

0 голосов
/ 07 ноября 2012

Если вы предоставите весь XML, точный ответ будет проще.Однако вы можете попробовать ниже xpath.Проблема может быть связана с отсутствующим пространством имен.

${Test Request#Response#declare namespace ns1='http://ADDNAMESPACEHERE'; //multiRef[1]/value[1]/text()}
...