JMeter XPath结果缺少预期的项目

时间:2013-11-27 22:05:37

标签: xpath jmeter

在HTTP请求之后使用XPath断言://ul/@class,断言返回:

success_message_1=links
success_message_2=accordion vertnav vertnav-top grid-full
success_message_3=grid-full classic
success_message_4=checkout-types
success_message_5=links
success_message_matchNr=5

它缺少一个元素,恰好是我需要找到的成功消息。成功消息的结构是:

<ul class="messages"><li class="success-msg"><ul><li>Message</li></ul></li></ul>

使用//li[@class="success-msg"]奇怪地定位该项目不会返回任何内容。使用jQuery我做了一个简单的jQuery('ul'),它匹配所有<ul>,包括丢失的。{/ p>

我已经检查了响应,并且响应中确实存在成功消息,但为什么我不能用XPath选择它?

1 个答案:

答案 0 :(得分:0)

正确的XPath表达式,如果你需要获取“消息”“vanilla”XPath选择器将看起来像

//li[@class='success-msg']/ul/li/text()

如果您的页面不符合XML / XHTML,则可能需要在XPath断言中启用“使用整洁”框。

特别是对于XPath之后的代码断言对我有用:

//li/text()='Message'

您可能希望将XPath Extractor合并器与Debug SamplerView Results Tree侦听器一起使用,以查看XPath查询的输出是什么,一旦您获得“true” - 查询是可以在断言中使用。