JMeter提取器
2023-12-14 18:23:59
JMeter三大提取器
一、正则表达式提取器
- 使用场景: 任意格式的响应数据都可以使用正则表达式提取器;
- 操作步骤: 添加线程组-添加HTTP请求-添加后置处理器-添加正则表达式提取器
- 参数说明
- 引用名称: 存放提取出的参数名称
- 正则表达式: 左边界<.*?>右边界
- 模板: 用$$引用,表示解析出的第几个()的值,$1$表示第一个
- 匹配数字: 1表示第一个值,-1表示所有值
- 缺省值: 匹配不到时取得值
- Q1:(.?)和(.?)区别:
- (.+?):匹配一个及以上
- (.*?):匹配0个及以上
- Q2:一个表达式匹配多个参数
- Q3:提取传智播客中第五个城市作为参数传递给百度
方法一:直接匹配目标值
1、匹配数字为5,表示选择第五个匹配值
2、请求HTTP
方法二:提取匹配的所有值后,选择相应的值
1、匹配数字为-1
2、查看对应的变量
3、请求百度
- Q4:提取传智播客中第五个城市作为参数传递给百度,地址名称不同,地址/地址一等
二、XPath提取器
- 使用场景: HTML格式的响应结果数据进行提取;
- 操作步骤: 添加线程组-添加HTTP请求-添加后置处理器-添加XPath提取器
- 参数说明:
- 勾选Use Tidy:为HTML时勾选
- 引用名称:用于存储提取的参数名称
- XPath query:用于提取值的XPath表达式
- 匹配数字:0表示随机,-1表示提取所有的结果,1为第一个值
三、JSON提取器
- 使用场景: 提取JSON格式的数据;
- 操作步骤: 添加线程组-添加HTTP请求-添加后置处理器-添加JSON提取器
- 参数说明:
- 同上面两个提取器
- 同上面两个提取器
四、JSON属性
当有关联关系的两个请求在同一个线程组中时,可以使用三种提取器的变量实现数据传递;当有关联关系的两个请求在不同线程组中时,如何进行数据传递?
- JMeter属性配置函数:
- _setProperty:将值保存为JMeter属性
- _property函数:在其他线程组中使用该函数读取属性
- 操作步骤:
- 创建http请求
- 创建JSON提取器,将提取值存放在值为city的变量中
- _setProperty将city保存为JMeter属性值pro_city
- _property读取JMeter中的属性pro_city
- 创建BeanShell取样器,粘贴_setProperty生成值
- 线程组外创建http请求,变量为_property生成值
- 点击运行,可以看到非同一线程组可以用提取的变量
文章来源:https://blog.csdn.net/qq_43251445/article/details/134919805
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!