jmeter的关联-正则表达式的应用
LoadRunnner中的关联为web_reg_save_param,查找左右边界,下次请求的时候会用到上次请求服务器返回的数据,那么我们把符合左右边界的数据保存下来,以便下次请求的时候用到。
jmeter中的关联为使用正则表达式,把数据保存下来。
无论哪种形式的关联或者工具的关联,其本质是不变的,变得是不同的工具提供的不同的操作方法。
Jmeter中的关联
通过对本地文件的引用来完成关联
在Test Plan下创建如下线程组、然后在线程组下面创建HTTP Request、View Result Tree、Debug Sampler、Regular Expression Extractor
1、HTTP Request的设置:
Implementation我们一般选择 HttpClient4,协议为:file(因为为本地文件),方法:GET,编码:uft-8
D盘jmeter.txt文件内容为:
This is abcdefg34656jshshsjsksjskj。
sjdlsksknsaknjsnd
sdnasjmkssj
jssnsknskjssjsjsssksssjxjkdxjsjxalsxjss
jskss
Name="TOME" Value="Jerry"
2、Regular Expression Extractor的设置:
其中Apply to是这个正则表达式应用范围:主采样器和子采样器、只应用在主采样器、只应用在子采样器、JMeter变量,我们根据实际需要选择;
Field to check:检查的区域,Body、Body(unescaped)、Body as a Document、Response Headers(响应头)、Request Headers(请求头)、URL、Response Code、Response Message;
Reference Name:名字我们可以自定义,但是最好是有意义的,见名知意;
Regular Expression:根据实际关联的内容,进行正则表达式的关联;
Template,模板——一般默认为$1$,如果关联的是两个值,可以写成$1$$2$;
Macth No.1:选择第几次匹配到的值,有可能一个Sampler下面匹配到多个值,这时这个变量就可以用到,0代表随机取,可以用在每次取到的值是一样的情况下,一般我们只 匹配第一次,所以写1,-1代表所有都匹配到。
Default Value:如果没有匹配到的值为,我们可以自定义,也可以用默认的empty值;
正则表达式的规则为:
*:代表任意长度
3、运行,查看结果树:
我们可以查看到session、session_g、session_g0、session_g1
如果文件内容为:
This is abcdefg34656jshshsjsksjskj。1234。
sjdlsksknsaknjsnd
sdnasjmkssj
jssnsknskjssjsjsssksssjxjkdxjsjxalsxjss
jskss
Name="TOME" Value="Jerry"
那么运行结果为:
显然不是我们想要的结果,应该是我们的正则表达式的规则不完整导致,更改正则表达式的规则为:
(.+?):代表匹配任意多个字符,并且找到匹配的结果之后马上停止查找;
结果为:
如果想匹配Name="TOME" Value="Jerry",正则表达式为:
结果为:
我们可以看到session为两个连起来的字符串,这个和我们正则表达式的模板是一致的,如果我们模板设为$1$aaa$2$,那么结果为session=TOMEaaaJerry。
最新文章
- 什么是web框架?
- Upstart 1.10 发布,系统初始化守护进程
- solr与.net系列课程(三)solr连接数据库
- 为什么Android应该根据屏幕分辨率来加载不同的图片文件
- 超实用的JavaScript代码段 --倒计时效果
- 《Python 学习手册4th》 第六章 动态类型简介
- 201521123113《Java程序设计》第11周学习总结
- HttpWebRequest请求http1.1的chunked的解析问题记录
- Java静态成员与实例成员
- FTP和TCP的文件传输效率对比测试分析
- Sonya and Matrix CodeForces - 1004D (数学,构造)
- JavaScript基础(三)
- IntelliJ IDEA 2018破解方法
- day19-高阶函数、匿名函数
- java垃圾回收的回收器
- 代码实现分析mpeg-2文件
- ios中推送
- 如何自学计算机科学与技术(Teach Yourself Computer Science)
- thinkphp中如何是实现多表查询
- repcached配置与简单測试
热门文章
- linux下mysql的配置问题
- 软件-UlitraEdit:UIitraEdit
- PHP基于openssl实现的非对称加密操作
- tensorflow 利用python generate_cifar10_tfrecords.py --data-dir=${PWD}/cifar-10-data报错
- Pandas绘图不支持中文解决方案
- 使用tomcat脚本开启服务
- Jupyter notebook使用matplotlib不出图解决办法
- 二进制日志过期时间设置expire_logs_days
- ubuntn右上角小键盘消失及fictx切换输入法快捷键
- bzoj 2935 [Poi1999]原始生物——欧拉回路思路!