2013-06-13 5 views
2

я получаю следующий ответ от JMeter:JMeter XPath запрос не найти требуемое значение

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<CertificateResponse> 
    <certificates> 
     <certificate> 
      <amount> 
       <value>100.00</value> 
      </amount> 
      <appleRetail>false</appleRetail> 
      <attributes> 
       <entry key="XYZ">444</entry> 
       <entry key="ABC">DEF</entry> 
      </attributes> 
      <cardType>1</cardType> 
      <datePurchased>06/13/2013 12:47:04:000 GMT</datePurchased> 
      <id>XWGL6GMXWN3P8TXL</id> 
      <lineItemNumber>1</lineItemNumber> 
      <purchaserDSIDLong>12860</purchaserDSIDLong> 
      <refID>XCard_0000250410356</refID> 
      <salesOrgId> 
       <description>US</description> 
       <ID>1</ID> 
      </salesOrgId> 
      <status>2</status> 
      <supportDSID>0</supportDSID> 
      <variableCard>false</variableCard> 
      <webOrderNumber>M33764265</webOrderNumber> 
     </certificate> 
    </certificates> 
</CertificateResponse> 

Я использую следующий XPath запрос в HTTP Sampler в JMeter, я не эль, чтобы получить значение.

/CertificateResponse/certificates/certificate/id 

Где я иду не так?

+1

В будущем, пожалуйста, уделите время правильному форматированию любых данных в вашем вопросе до его публикации. (В противном случае люди просто проигнорируют его - почему они должны тратить время, когда вас не беспокоят в конце концов.) –

+0

Ваш XPath в порядке, проблема должна быть в коде, вызывающем выражение XPath, размещать больше кода. Это именно XML-вход, с которым вы работаете (например, включены ли пространства имен)? –

+0

[Получил ответ?] (Http://stackoverflow.com/help/someone-answers) –

ответ

1

Я использую следующий XPath запрос в HTTP Sampler в JMeter ...

Ваше выражение XPath отлично работает, но вы должны использовать его вместе с XPath Extractor прикрепленного к пробоотборник, который возвращает ответ XML:

enter image description here

Use Tidy (tolerant parser): No 

Reference Name: certificateID 
XPath Query: //CertificateResponse/certificates/certificate/id 
Default Value: NOT_FOUND 

Это будет извлекать значение id в переменную jmeter certificateID, которую вы можете назвать ссылкой ${certificateID}.

Смежные вопросы