我是靠谱客的博主 自由面包,最近开发中收集的这篇文章主要介绍Jmeter-CSV Data Set Config参数化,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  在使用Jemeter做压力测试的时候,往往需要参数化用户名,密码以到达到多用户使用不同的用户名密码登录的目的.这个时候我们就可以使用CSV Data Set Config实现参数化登录:

  首先通过Test Plan或者Thread Group的Add->Config Element->CSV Data Set Config添加

  以下是CSV Data Set Config各个参数的简要说明:

  FileName:即同目录下csv文件的名称

  File Encoding: 默认为ANSI

  Varible Names: 定义文本文件中的参数名,参数之间逗号分隔.定义后可在脚本在以Shell变量的同样的方式引用

  Allow Quoated data: 双引号相关

  Recycle on EOF: 设置为True后,允许循环取值

  Stop Thread on EOF: 当Recycle on EOF为false并且Stop Thread on EOF为true,则读完csv文件中的记录后,停止运行

  Sharing Mode: 设置是否线程共享

  设置2个线程去运行,结果如下:

  成功读取CSV中的参数.

  最后,我们需知Jmeter还有如下方式可以进行参数化:

  User Defined Varibles: 一般对不需要改变的参数进行

  User Parameters:

  通过系统函数: Options->Function Helper Dialog,通过自己输入参数值,点击"Generate" 按钮产生

  比如使用函数__CSVRead

  先准备csv文件,可以先在excel文件里准备好数据,保存的时候格式选择csv格式;

  输入csv文件所在的路径:F:test.csv,输入参数所在的列(注意:此处列数是从0开始数的,第一列是用户名,对应的列号为0,第二列是密码,对应的列号为1...),生成被调用的函数:${__CSVRead(F:test.csv,0)}

  在参数对应的值处填入:${__CSVRead(F:test.csv,0)}

  方法二、CSV Data Set Config

  选中取样器,右键:添加-配置元件-CSV Data Set Config,从csv文件中读取

  Filename:csv文件所在的路径以及名称如:F:test.csv ;(其实不一定要csv文件,亲测txt格式的文件也可以)

  File encoding:给出页面的编码方式,可以不填写;这里以百度为例,它的源代码里 ,所以这里File encoding:gb2312

  Variable Names(comma-delimited):给出变量名如:name,pwd;这里的变量名是给后面引用用的,如要用到这个文件的值,可以利用变量名来引用:${name},${pwd},如test.csv文件中有这样的数据:1@180chen.cn,abc1233,那${name}就可以引用到1@180chen.cn,${pwd}就可以引用到abc1233

  Delimiter(use 't' for Tab):这个是用来隔开变量的分隔符,如上面的name,pwd,那分隔符就是“,”

  Allow quoted data?:是否允许引用数据,---这个目前还未弄明白,设置成True或者False都能正常引用数据。

  Recycle on EOF?:到了文件尾是否循环,True---继续从文件第一行开始读取,False---不再循环

  Stop thread on EOF?:到了文件尾是否停止线程,True---停止,False---不停止,注:当Recycle on EOF设置为True时,此项设置无效。

  Sharing mode:共享模式,All threads---所有线程,Current thread group—当前线程组,Current thread—当前线程。这个地方和LoadRunner中的迭代取之相反,经试验得出来的结果是:

  All threads:测试计划中所有线程,假如说有线程1到线程n (n>1),线程1取了一次值后,线程2取值时,取到的是csv文件中的下一行,即与线程1取的不是同一行。

  Current thread group:当前线程组,假设有线程组A、线程组B,A组内有线程A1到线程An,线程组B内有线程B1到线程Bn。取之情况是:线程A1取到了第1行,线程A2取第2行,现在B1取第1行,线程B2取第2行。

  Current thread:当前线程。假设测试计划内有线程1到线程n (n>1),则线程1取了第1行,线程2也取第1行。

  综上:CSV Data Set Config实现的功能跟之前用的:${__CSVRead(F:test.csv,0)}这个函数实现的功能大体上是一样的。

转载于:https://www.cnblogs.com/rambo-yi/p/9897708.html

最后

以上就是自由面包为你收集整理的Jmeter-CSV Data Set Config参数化的全部内容,希望文章能够帮你解决Jmeter-CSV Data Set Config参数化所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部