xpath contains_自动化关联篇Jmeter(二十五)_Xpath关联

在Jmeter中,除了正则表达式可以用作关联,还有一种方式也可以做关联,那就是 XPath Extractor。它是利用xpath提取出关键信息,传递变量。

具体用法

添加一个后置处理器-XPath Extractor

2f1a20e4d622518f62b9861dc5b2cf70.png
7beb324f4528a0677045af0c515bc4d4.png

实际操作

以腾讯新闻网为例,我们做一次演练。对腾讯新闻网我们发起一次请求,观察结果。

2fec9f67f6aea2a81e00b0e47d0bac81.png

现在我想利用xpath把这些url都取出来,我们来写一个xpath表达式匹配一下。发现url都被匹配出来了。

bd9baa046f514ef3251ae0625a6917a0.png

.//a[@class='linkto']/@href 具体是什么意思呢?意思就是通过a>class>href这三层标签进行逐级检索,找到class=linkto标签下的所有href,进行匹配

这里如果我想匹配到href标签下的文字标题怎么办?改一下表达式吧--.//a[@class='linkto'],我们发现取出来都是标题,后面可以再进行拼接

e616a179a63ff753e0433c2421f35a7a.png

现在表达式没有问题了,我们将添加的xpath提取器挂在http请求下面。添加一个debug查看结果,可以看到debug中已经获取到了这些url

44e0fcfd95a8b0ca60c6a6d521459e95.png
71e826f12aeb381e7224343eb395d5cd.png

我们可以添加两个xpath提取器,分别提取url和title进行拼装,运行查看结果

30178d0b12cc7ef79b13cbd8f4878d96.png
428af05df46a6d4a0f635947f463fa91.png

xpath基本语法

//*[@class,'A ']/@href 从根目录下定位所有class=A的href

//*[@class,'A '] 从根目录下定位所有class=A标签内的文本

//*[contains(@class,'A ')] 从根目录下@class值中包含A的节点

substring-before(.//*[@class='A']/text(),'0') 返回根目录下[@class='A']/text()中第一个'0'前面的部分,如果不存在'0',则返回空值

substring-after(.//*[@class='A']/text(),'0') 返回根目录下[@class='A']/text()中第一个'0'后面的部分,如果不存在'0',则返回空值

b126b2b012cfca65d27b1787e4dc0ddc.png

参考

https://blog.csdn.net/gongbing798930123/article/details/78955597

https://www.blazemeter.com/blog/using-xpath-extractor-jmeter-0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值