为什么我的JMeter XPath断言失败了?

时间:2017-04-21 15:21:35

标签: xpath jmeter

我正在尝试运行一个简单的负载测试,但是我的一些XPath断言失败了,我无法弄清楚原因。以下是html示例:

<div class="g1260">
    <h1 class="top-head">
        <div id="ctl00_mainContent_ctl00">
    INVESTMENT CONSULTANTS
        </div>
    </h1>
</div>

这是我的XPath:

//div[@id="ctl00_mainContent_ctl00" and contains(text(),"INVESTMENT CONSULTANTS")]

断言失败,即使当我查看结果树中的响应时,元素就在那里。

Jmeter response

我也尝试过XPaths

//div[@class="g1260"]/h1[@class="top-head"]/div

失败了,

//div[@class="g1260"]/h1[@class="top-head"]

传递。

所有上述XPath在开发人员控制台中都可以正常工作,但在JMeter中失败。这是怎么回事?

1 个答案:

答案 0 :(得分:2)

我无法重现您的问题,调查XPath Tester modeView Results Tree listener

此外,您的表达式仅检查节点是否存在,如果您需要测试文本是否等于INVESTMENT CONSULTANTS,则需要修改XPath表达式,如下所示:

normalize-space(//div[@id="ctl00_mainContent_ctl00"]/text())='INVESTMENT CONSULTANTS'

JMeter Xpath Tester 2

根据您的回复性质,您可能(或可能不)需要勾选Use Tidy框,如果您使用的是Tidy,请尝试这两个选项 - 检查 jmeter.log 文件对于任何可疑的条目。

如果上述步骤无效 - 分享您的完整回复和断言要求,我们会尝试提供最合适的配置。

在此期间,请查看此XPath Tutorial