jemter使用--5、动态数据关联
来源:互联网 发布:数据库对接方案 编辑:程序博客网 时间:2024/05/04 11:34
在HTTP请求的参数中经常会遇到一些参数的值是从服务器相应的动态数据,这些数据需要进行关联才能使得每一次请求都能成功得被服务器接受,在JMeter中采用正则表达式提取器来获取这些动态的数据。
1、正则表达式:
正则表达式允许用户从服务器响应中获取数据,作为一个后置处理器,正则表达式提取器会在每一个请求执行后再执行,正则表达式提取请求的参数值,产生模板字符串,并将结果保存到给出的变量中。
在需要获得数据的请求上右击添加一个后置处理器-->正则表达式提取器
引用名称:其他地方引用提取值的变量名称,如填写的是:str,具体的引用方式是${str}
正则表达式:提取内容的正则表达式【稍注意一下:()表示提取,对于你要提前的内容需要用小括号括起来】,正则表达式中()括起来的部分就是要提取的。.代表任意字符,+代表一次或多次,?代表不要太贪婪,在找到第一个匹配项后停止。
模板:用$$引用起来,如果在正则表达式中有多个提取表达式(多个括号括起来的东东),则可以是$1$,$2$等等,表示解析到的第几个值给str,正则表达式的提取模式,值从1开始,值0对应的是整个匹配的表达式 如对于表达式s(.*) 值0对应str,值1对应tr
匹配数字(0代表随机):0代表随机,-1代表所有,其余正整数代表将在已提取的内容中,第几个匹配的内容。
缺省值:正则匹配失败时,取的值
比如我们想要获得从服务器相应的TOKEN,就可以使用下面的正则表达式提取器。
使用时就可以使用${token}来表示获取到的TOKEN值。如下图
2、JSON Path PostProcessor
假设需要从 HTTP 的响应头中返回的 Json 格式的数据流中抽取某些特定的数据,数据格式如下:
{
"name":"Simpsons family",
"members":[
{"firstName":"Homer", "lastName":"Simpson"},
{"firstName":"Marge", "lastName":"Simpson"},
{"firstName":"Bart", "lastName":"Simpson"},
{"firstName":"Lisa", "lastName":"Simpson"},
{"firstName":"Maggie", "lastName":"Simpson"}
]
}
处理 Json 数据的方法是使用 JMeter 的插件,该插件可以使用 JSONPath 来获取 JSON 数据中特定位置的数据。类似于 XML 文件中的 XPath , JSONPath 可以使用简单的表达式来操作 Json 对象。 JSON Path Extractor 是一个开源的增加了 post处理器的插件,可以将该插件的 Lib 文件拷贝到 JMeter 的 lib 目录下即可。
而上文中提及的需要定位的数据可以使用如下的JSONPath 进行描述:
$.members[2].firstName
在 JMeter 中,只需要从 PostProcessor 菜单中打开 JSON Path Extractor 然后输入变量名与默认值即可,如下所示:
- jemter使用--5、动态数据关联
- Jemter使用JDBC连接数据库
- jemter使用过程中的问题
- (十五) jemter-session,cookie与关联---学习笔记
- jemter使用--3、聚合报告详解
- jemter使用beanshell的几种方法
- jemter使用过程中的知识总结
- loadRunner12 设置关联 获取服务端动态数据
- 报表数据如何使用关联数据集
- jemter使用-9、生成html报告图表指示板
- 动态加载HorizontalSrcollView与ViewPager关联使用
- jemter linux
- Jemter介绍
- Jemter介绍
- jemter 入门
- DevExpress使用dataset变量关联报表数据
- 使用 PDO 关联查询 MySQL 数据
- LoadRunner脚本关联动态数据的最简单方法
- 利用flandmark进行face alignment
- AndroidStudio SVN插件配置与使用
- iOS开发支付集成之微信支付
- ros问题—— importError: No module named srv
- 浅析MySQL中exists与in的使用
- jemter使用--5、动态数据关联
- Git+GitHub,构建自己的开源仓库之初识Git
- 在Java中对Redis的缓存操作
- (4.6.11.9)Instant Run工作原理及用法:冷温热插拔
- mybatis对> < (大于号 小于号)等的处理
- web前端——实现上传图片预览功能
- 使用git(sourcetree)
- 在SQL语句里使用if else 判断
- MFC中的连接符标示使用