jmeter之关联

jmeter学习笔记——关联
话说LoadRunner有的一些功能,比如:参数化、检查点、集合点、关联,Jmeter也都有这些功能,只是功能可能稍弱一些,今天就关联来讲解一下。
JMeter的关联方法有两种:后置处理器-正则表达式提取器与XPath Extractor。
一、正则表达式提取器
1、添加正则表达式
在需要获得数据的上一个请求上右击添加一个后置处理器–>正则表达式提取器
在这里插入图片描述
解释:
(1)引用名称:下一个请求要引用的参数名称,如填写activityID,则可用KaTeX parse error: Expected 'EOF', got '\n' at position 110: …项后停止。 注:(.+?)[.\̲n̲]+可以匹配换行符在内的所有字…$引用起来,如果在正则表达式中有多个正则表达式(多个括号括起来的东东),则可以是 2 2 2 3 3 3等等,表示解析到的第几个值给title。如: 1 1 1表示解析到的第1个值
(4)匹配数字:0代表随机取值,1代表全部取值,通常情况下填0,如果在LR中,取出的值是一个数组,还得处理一下,LR11版本用一个随机的函数就可以不用写大段的代码来处理数组。
(5)缺省值:如果参数没有取得到值,那默认给一个值让它取。

2、关于正则表达式的举例说明
(1)提取单个字符串:
假设测试人员期望匹配Web页面的如下部分:name = “file” value = “readme.txt”>并提取readme.txt。
一个符合要求的正则表达式:name = “file” value = “(.+?)”>。
():封装了待返回的匹配字符串。
.:匹配任何字符串。
+:一次或多次。
?:不要太贪婪,在找到第一个匹配项后停止。

(2)提取多个字符串:
假设测试人员期望匹配Web页面的如下部分:name = “file” value = “readme.txt”>并提取file和readme.txt。
一个符合要求的正则表达式:name = “(.+?)” value = “(.+?)”。
引用名称:MYREF
模板: 1 1 1 2 2 2

如下变量的值将会被设定:
MYREF_g0:name = "file"value = “readme.txt”
MYREF_g1:file
MYREF_g2:readme.txt
引用${MYREF_g1}

3、使用该关联的请求
如下图:
在这里插入图片描述

4、完整的例子:事例代码

二、XPath Extractor
XPath Extractor是另一个可被用来提取页面给定内容的Post Processor,XPath Extractor的使用方式与Regular Expression Extractor类似,只不过需要在该Extractor中指定的不是正则表达式,而是给定的XPath路径。
用xpath从前一个请求中取。这种形式比较适合于返回为xml片段的情况。在需要获得数据的请求上右击添加一个后置处理器–>xPath Extractor。引用名称即下一个请求要引用的参数名称,如填写body,则可用${body}引用它。
Xpath一般用于返回xml用得多。
XPath Extractor的设置界面:
在这里插入图片描述
l Use Tidy?:当需要处理的页面是HTML格式时,必须选中该选项,当需要处理的页面是XML或XHTML格式(例如,RSS返回)时,取消选中该选项。
l Reference Name:存放提取出的值的参数。
l XPath Query:用于提取值的XPath表达式。
l Default Value:参数的默认值。

三、小结这两种方式
正则表达式提取器和XPath Extractor都可以用来提取给定页面中的特定文本,并将其保存在参数中,这两种方式各有优缺点。
正则表达式提取器可以用于对页面任何文本的提取,提取的内容是根据正则表达式在页面内容中进行文本匹配;
而XPath Extractor则可以提取返回页面任意元素的任意属性。
相比较而言,
如果需要提取的文本是页面上某元素的属性值,建议使用XPath Extractor;
而如果需要提取的文本在页面上的位置不固定,或者不是元素的属性,建议使用正则表达式提取器。
jmeter学习笔记——关联
话说LoadRunner有的一些功能,比如:参数化、检查点、集合点、关联,Jmeter也都有这些功能,只是功能可能稍弱一些,今天就关联来讲解一下。
JMeter的关联方法有两种:后置处理器-正则表达式提取器与XPath Extractor。
一、正则表达式提取器
1、添加正则表达式
在需要获得数据的上一个请求上右击添加一个后置处理器–>正则表达式提取器

解释:
(1)引用名称:下一个请求要引用的参数名称,如填写activityID,则可用KaTeX parse error: Expected 'EOF', got '\n' at position 110: …项后停止。 注:(.+?)[.\̲n̲]+可以匹配换行符在内的所有字…$引用起来,如果在正则表达式中有多个正则表达式(多个括号括起来的东东),则可以是 2 2 2 3 3 3等等,表示解析到的第几个值给title。如: 1 1 1表示解析到的第1个值
(4)匹配数字:0代表随机取值,1代表全部取值,通常情况下填0,如果在LR中,取出的值是一个数组,还得处理一下,LR11版本用一个随机的函数就可以不用写大段的代码来处理数组。
(5)缺省值:如果参数没有取得到值,那默认给一个值让它取。

2、关于正则表达式的举例说明
(1)提取单个字符串:
假设测试人员期望匹配Web页面的如下部分:name = “file” value = “readme.txt”>并提取readme.txt。
一个符合要求的正则表达式:name = “file” value = “(.+?)”>。
():封装了待返回的匹配字符串。
.:匹配任何字符串。
+:一次或多次。
?:不要太贪婪,在找到第一个匹配项后停止。

(2)提取多个字符串:
假设测试人员期望匹配Web页面的如下部分:name = “file” value = “readme.txt”>并提取file和readme.txt。
一个符合要求的正则表达式:name = “(.+?)” value = “(.+?)”。
引用名称:MYREF
模板: 1 1 1 2 2 2

如下变量的值将会被设定:
MYREF_g0:name = "file"value = “readme.txt”
MYREF_g1:file
MYREF_g2:readme.txt
引用${MYREF_g1}

3、使用该关联的请求
如下图:

4、完整的例子:事例代码

二、XPath Extractor
XPath Extractor是另一个可被用来提取页面给定内容的Post Processor,XPath Extractor的使用方式与Regular Expression Extractor类似,只不过需要在该Extractor中指定的不是正则表达式,而是给定的XPath路径。
用xpath从前一个请求中取。这种形式比较适合于返回为xml片段的情况。在需要获得数据的请求上右击添加一个后置处理器–>xPath Extractor。引用名称即下一个请求要引用的参数名称,如填写body,则可用${body}引用它。
Xpath一般用于返回xml用得多。
XPath Extractor的设置界面:

l Use Tidy?:当需要处理的页面是HTML格式时,必须选中该选项,当需要处理的页面是XML或XHTML格式(例如,RSS返回)时,取消选中该选项。
l Reference Name:存放提取出的值的参数。
l XPath Query:用于提取值的XPath表达式。
l Default Value:参数的默认值。

三、小结这两种方式
正则表达式提取器和XPath Extractor都可以用来提取给定页面中的特定文本,并将其保存在参数中,这两种方式各有优缺点。
正则表达式提取器可以用于对页面任何文本的提取,提取的内容是根据正则表达式在页面内容中进行文本匹配;
而XPath Extractor则可以提取返回页面任意元素的任意属性。
相比较而言,
如果需要提取的文本是页面上某元素的属性值,建议使用XPath Extractor;
而如果需要提取的文本在页面上的位置不固定,或者不是元素的属性,建议使用正则表达式提取器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值