Jmeter(4)----参数化
2015-12-18 17:33
204 查看
函数
打开路径
![](http://img.blog.csdn.net/20151225165125576?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
1._Random(随机数字)
![](http://img.blog.csdn.net/20151225165510619?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
1).最小值:随机数最小值
2).最大值:随机数最大值
3).result :存储最后生成的随机数
4).函数字符串:其他元件调用该函数时使用该字符串。
上面这个函数设置后,意思就是该随机数在1~100之间随机取值
2._RandomString
![](http://img.blog.csdn.net/20151225165147815?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
1)length:字符串字母个数
2)generation:字符串的组成从哪些字符中取
3)result:生成的字符串存到result中
4)函数字符串:其他元件调用该函数时使用该字符串
上面这个函数设置后,意思就是生成的字符串可以是其中一个:ab; ac; ba; bc; ca; cb; aa; bb; cc
配置元件
3.CSV Data Set Config
1)打开路径
![](http://img.blog.csdn.net/20151220165145845?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
2)界面介绍
![](http://img.blog.csdn.net/20151220165721259?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
Filename:文件路径,可以写绝对路径,也可相对路径
File encoding:文本编码格式
Variable Names:依次给文本没一列设置一个名称。
Delimiter:每一列之间的分隔符
Recycle on EOF:读取文本到结尾后,是否从头开始再读
Stop thread on EOF:Recycle on EOF参数为false时候生效。读取完成后是否关闭进程
Sharing mode:设置线程共享
此处,我们读取test,csv文件,每一列名称分别设置为username,age。在http请求中,我们要使用test,csv文件里面的数据作为参数时,我们可以使用${username}、${age}
4.Ramdom Variable
1)打开路径
![](http://img.blog.csdn.net/20151225165314600?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
2)界面介绍
![](http://img.blog.csdn.net/20151225165318905?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
(1)Variable Name:随机数名称。其他元件想使用该随机数格式:${ram}
(2)Minimum Value:随机数最小值
(3)Maximum Value:随机数最大值
(4)Seed:在Seed值相同,Per Thread为True的情况下,每次随机值都是相同的
(5)Per Thread:
Sampler
1.JDBC Request
1)首先引入mysql驱动包
![](http://img.blog.csdn.net/20151220171314578?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
2)配置mysql链接
打开路径
![](http://img.blog.csdn.net/20151220172414363?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
界面介绍
![](http://img.blog.csdn.net/20151220172523601?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
Variable Name:一定设置,不同的配置文件设置不同的variablename,JDBC请求里面使用不同的variablename调用不同的配置文件
Database:数据库类型、数据库地址、名称
JDBC Driver class:数据库驱动。从引入的JAR中获取到该驱动
username:数据库用户名
password:密码
3)JDBC请求
打开路径
![](http://img.blog.csdn.net/20151220173120275?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
界面介绍
![](http://img.blog.csdn.net/20151221222637335?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
Variable name:引用的数据库配置文件名称
Query Type:数据库操作类型,此处选择查询。
Query:写操作SQL
Variable names:将SQL结果参数化。如图:A表示第一列,B表示第二列,C表示第三列
A_#:第一列行数
A_1:第一列第一行的值
A_2:第二列第二行的值
B_#:第二列行数。。。。。。
4)BeanShell 取出参数化后的结果
![](http://img.blog.csdn.net/20151221223141893?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
解释:(1)int num1 = Integer.valueOf(${A_#}).intValue();
获取当前取出的数据有多少行
(2)int num2 = Integer.valueOf(${__counter(TRUE,)}).intValue();
获取当前线程循环的次数
(3)int num = num2%num1 + 1;
bf49
将当前循环的次数除以行数取余后,加一
(4)vars.put("result",vars.get("B_"+num));
固定方法:vars.get("B_"+num)获取jmeter属性key=("B_"+num)的值
vars.put:将获取到的值传入给key=result的jmeter属性,其他元件可以通过${key}来取得该值,例如:
打开路径
1._Random(随机数字)
1).最小值:随机数最小值
2).最大值:随机数最大值
3).result :存储最后生成的随机数
4).函数字符串:其他元件调用该函数时使用该字符串。
上面这个函数设置后,意思就是该随机数在1~100之间随机取值
2._RandomString
1)length:字符串字母个数
2)generation:字符串的组成从哪些字符中取
3)result:生成的字符串存到result中
4)函数字符串:其他元件调用该函数时使用该字符串
上面这个函数设置后,意思就是生成的字符串可以是其中一个:ab; ac; ba; bc; ca; cb; aa; bb; cc
配置元件
3.CSV Data Set Config
1)打开路径
2)界面介绍
Filename:文件路径,可以写绝对路径,也可相对路径
File encoding:文本编码格式
Variable Names:依次给文本没一列设置一个名称。
Delimiter:每一列之间的分隔符
Recycle on EOF:读取文本到结尾后,是否从头开始再读
Stop thread on EOF:Recycle on EOF参数为false时候生效。读取完成后是否关闭进程
Sharing mode:设置线程共享
此处,我们读取test,csv文件,每一列名称分别设置为username,age。在http请求中,我们要使用test,csv文件里面的数据作为参数时,我们可以使用${username}、${age}
4.Ramdom Variable
1)打开路径
2)界面介绍
(1)Variable Name:随机数名称。其他元件想使用该随机数格式:${ram}
(2)Minimum Value:随机数最小值
(3)Maximum Value:随机数最大值
(4)Seed:在Seed值相同,Per Thread为True的情况下,每次随机值都是相同的
(5)Per Thread:
Sampler
1.JDBC Request
1)首先引入mysql驱动包
2)配置mysql链接
打开路径
界面介绍
Variable Name:一定设置,不同的配置文件设置不同的variablename,JDBC请求里面使用不同的variablename调用不同的配置文件
Database:数据库类型、数据库地址、名称
JDBC Driver class:数据库驱动。从引入的JAR中获取到该驱动
username:数据库用户名
password:密码
3)JDBC请求
打开路径
界面介绍
Variable name:引用的数据库配置文件名称
Query Type:数据库操作类型,此处选择查询。
Query:写操作SQL
Variable names:将SQL结果参数化。如图:A表示第一列,B表示第二列,C表示第三列
A_#:第一列行数
A_1:第一列第一行的值
A_2:第二列第二行的值
B_#:第二列行数。。。。。。
4)BeanShell 取出参数化后的结果
解释:(1)int num1 = Integer.valueOf(${A_#}).intValue();
获取当前取出的数据有多少行
(2)int num2 = Integer.valueOf(${__counter(TRUE,)}).intValue();
获取当前线程循环的次数
(3)int num = num2%num1 + 1;
bf49
将当前循环的次数除以行数取余后,加一
(4)vars.put("result",vars.get("B_"+num));
固定方法:vars.get("B_"+num)获取jmeter属性key=("B_"+num)的值
vars.put:将获取到的值传入给key=result的jmeter属性,其他元件可以通过${key}来取得该值,例如:
相关文章推荐
- 短消息调试笔记
- Wix学习整理(5)——安装时填写注册表
- 使用最原始的http-post方式上传图片 ,上传工具类已封装 可直接使用
- Spark集成Kafka源码分析——SparkStreaming从kafak中接收数据
- sql中的now()方法
- 多台日志汇聚一个terminal实例
- java提高篇(十一)-----代码块
- Oracle、MySql、SQLServer 数据分页查询
- flume的配置
- 事件的解除与绑定
- Windows2008r2主域和从域传输的问题
- nginx的配置、虚拟主机、负债均衡和反向代理(2)
- 重启博客,继续开始个人的旅行
- IOS判断日期是今天,昨天还是明天
- 获得本月的第一天和最后一天
- java提高篇(十)-----强制类型转换
- linux 后台任务,screen命令
- 送给正在 奋斗和成长路上的女人们
- 第13周项目2-Kruskal算法的验证
- 用纯php实现MVC框架,文件目录模仿yii2