jmeter三种参数化以及乱码解决办法

jmeter三种参数化 以及乱码解决

一   函数助手

  

  ${__RandomString(11,123456789,)}   可以直接复制引用                          

二   CSV参数化

CSV数据文件配置用于从文件中读取行,可以是csv文件或者txt文件,并将它们拆分为变量。它非常适合处理大量变量,对于使用“随机”和唯一值的测试也很有作用。
默认情况下,文件只打开一次,每个线程将使用文件中的不同行。但是,行传递给线程的顺序取决于它们执行的顺序

CSV数据文件设置参数解析

  1. 名称:自己命名即可。
  2. 注释:自己命名即可,可以为空。
  3. 文件名:选择文件的路径,点击浏览选择文件的绝对路径即可。如果在linux服务器上,最好选择相对路径,把CSV文件和脚本放在同一个目录下。
  4. 文件编码:默认为ANSI(ASCII码的拓展),可以选择为UTF-8
  5. 变量名称:CSV文件中的数值存放在变量中,供后续引用。变量可以多个,用英文逗号隔开,变量分别读取CSV文件中的列。
  6. 忽略首行:如果CSV文件中设置了首行的字段,比如“用户名”等,这些字段不是要使用的数据,那么就可以选择忽略首行。
  7. 分隔符:默认是逗号,比如txt文件中,设置多个值,用英文逗号隔开。
  8. 是否允许带引号:默认False
  9. 遇到文件结束符再次循环?:默认Ture,代表继续从文件的第一行循环读取数据,False表示不再循环。
  10. 遇到文件结束符停止线程?:默认False,Ture表示停止线程。
  11. 线程共享模式:默认【所有现场】

 实例  以不同账号登录xiaoqiangshop   

 新建一个TXT文档  写入不同的账号密码   

 打开CSV数据文件设置,引入刚建立文档  ,设置好变量名称  

 在脚本中通过 ${} 分别引用账号和密码    

 三 CSV随机参数化

在性能测试中,我们要实现这样一个场景,模拟不同的人购买不同的商品。我们前面讲的CSV参数化,是安装表格的顺序进行读取数据,如果是随机读取表格的数据,我们模拟的行为就会更真实一些。
需要用到的插件:Random CSV Data Set Config
步骤:

  1. 在JMeter中打开插件管理器
  2. 选择可用插件
  3. 搜索Random CSV
  4. 找到插件Random CSV Data Set Config 选中进行应用,然后重启JMeter

1、下载插件,下两个:
下载地址:Download :: JMeter-Plugins.org
下载界面如下:

还有一个插件:
下载一个jmeter的插件管理工具:http://jmeter-plugins.org/get/
把两个插件下载好之后,放在JMeter的安装目录lib/ext 下,然后重启JMeter。

2、搜索插件

选择可用插件,搜索random,选中Random CSV Data Set Config,右下角点击应用重启JMeter即可。

打开Random CSV Data Set Config元件:线程组>配置元件
配置元件中的组件,一般放在测试计划下

参数说明:

    1. Filename(文件名):文件的路径,直接选择文件的绝对路径就行,也可以写相对路径。
    2. 文件编码:读取文件的编码,默认选择UTF-8就行。
    3. 分隔符:默认逗号,在txt文件中,写两列的时候可以用逗号隔开。
    4. 变量名称:引用csv配置文件中的数据,指定变量名,意思是把csv的数据读出来,放在变量中,其他请求可以引用。
    5. 随机顺序:这个是这个插件的重点,选中则会随机读取csv中的数据,如果不选中则会顺序读取csv中的数据。
    6. 遇到文件结束符再次循环:勾选上循环完csv中的数据后,则会继续循环,一般都是要选中。
    7. 第一行是csv标题:如果csv文件中第一行是字段,那么勾选上则不会读取第一行的数据。
    8. 每个线程的独立列表:每个线程都通过他们自己去读取配置文件,当使用随机顺序(第5项),每个线程都将运行自己的随机序列,而不是所有线程都经过相同的变量顺序。
    9. 测试读取csv文件:在使用之前,可以先测试读取csv的值,看看是否正确。

    

四 , jmeter乱码解决方法   

一、新增的时候出现乱码

方法一:
添加HTTP请求时在Content encoding后填入编码:utf-8

看一下结果:没有乱码了

方法二:
在请求中加一个BeanShell前置处理器,在script中加入:
prev.setDataEncoding("utf-8"); 目的是修改响应数据编码格式为utf-8

方法三
修改JMeter的配置文件
进入JMeter安装目录的bin目录下,找到jmeter.properties文件

找到sampleresult.default.encoding这个参数,此行默认是注释的。把注释去掉,把ISO-8859-1改成utf-8,保存,重启JMeter。

还有一种情况是响应出现乱码,响应出现乱码解决办法也是修改JMeter的配置文件,还有就是加一个BeanShell后置处理器,在script中加入脚本:prev.setDataEncoding("utf-8");

最新版本对于编码格式会好一些,因为习惯了用4.0版本,乱码的时候就直接改为5.2版本,响应就不会出现乱码了。
接口的响应格式为JSON的时候,在查看结果中选择JSON Path Tester模式,显示就没问题了。

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值