Jmeter中使用CSV Data Set Config参数化不重复数据执行N遍

要求:

今天要测试上千条数据,且每条数据要求执行多次,(模拟多用户多次抽奖)

1.用户id有175个,且没有任何排序规则;

2.要求175个用户都去请求,每个用户执行3次;

(由于自己笔记本性能不佳,只能数量小举例,大家自行增加用户量和循环次数)

设计:

我们通过CSV Data Set Config,在记事本中先写好175个数据,然后直接调用该文本;

然后在http请求中直接引用该值;

整个图见下:

一.准备txt文档

1.参数说明

在txt文档中写入要调用的数据,如果数据只有一列,就写一列,即:1个参数;

两列就是2个参数,三列就是3个参数,文档中参数之间都要用英文逗号分隔;

(这里就以1个参数举例,如果以下描述不清楚,大家随时可留言,我回复)

2.txt文档名字叫gld.txt;里面的值见下:

二.启动jmeter.bat进入jmeter界面

1.添加线程组

右击“测试计划”-添加-Threads-线程组;

注:如果是英文jmeter可通过“选项”-选择语言-Chinese更改;

2.添加并配置CSV Data Set Config

(1)添加:

右击“线程组”-添加-配置元件-CSV Data Set Config;

(2)配置CSV Data SetConfig参数信息

Filename:制定的文档路径和名字;可以右击文档-属性,找到文档的路径,注意要写上文档名字和后缀;

File enconding:编码格式,如果txt文档中有中文,该行就要写入utf-8;

Variable Names:定义参数;txt文档中有几列就定义几个参数;参数见用英文逗号隔开;直接写wxid,在其他模块用的时候直接${wxid}调用即可;

Recycle on EOF:到了文件尾处,是否循环读取参数;

Stop thread on EOF:到了文件尾,是否停止线程;

(3)若:想把文档中所有数据读取一遍,且不重复,那么就要设置为:

Recycle on EOF:False;

Stop thread on EOF:True;

3.添加http请求并配置

(1)添加:右击“线程组”-添加-Sample-HTTP请求;

(2)配置http请求

4.修改线程组配置

因为我们只写了一个http请求,所以点击运行只会运行一次,我们想把txt文档中所有行都执行一遍,所以我们要将线程数修改;目前txt中共175行,所以线程组中线程数我们设置为175;

5.监听结果:添加“查看结果树”和“聚合报告”

查看结果树:可以看到每个请求的执行成功失败;

聚合报告:可以看出总共执行数和失败情况等;

6.点击运行,查看结果

点击绿色箭头运行,查看结果

(1)在“查看结果树”中,可以看到参数请求的是那个值:

(2)在“聚合报告”可以看所有线程有没有执行完成

以上结果,只是让txt文档中数据全部执行了1遍,如果想执行多次,那么我们就要让http请求重复执行了;

7.重复执行http请求

(1)添加循环控制器:

右击http请求-插入上级-逻辑控制器-循环控制器;

(2)配置循环次数

8.再次查看运行结果:

一共175条数据*3=525条记录;

到此我们就完成了,多用户多次抽奖的功能;

多用户就是txt文档中多行数据,多次抽奖就是单个请求循环3次,如果抽多次就修改次数即可

Jmeter使用CSV Data Set Config参数化数据不重复的多次循环执行(实现多用户多次抽奖功能)的更多相关文章

  1. 【转】Jmeter中使用CSV Data Set Config参数化不重复数据执行N遍

    Jmeter中使用CSV Data Set Config参数化不重复数据执行N遍 要求: 今天要测试上千条数据,且每条数据要求执行多次,(模拟多用户多次抽奖) 1.用户id有175个,且没有任何排序规 ...

  2. Jmeter===Jmeter中使用CSV Data Set Config参数化不重复数据执行N遍(转)

    Jmeter中使用CSV Data Set Config参数化不重复数据执行N遍 要求: 今天要测试上千条数据,且每条数据要求执行多次,(模拟多用户多次抽奖) 1.用户id有175个,且没有任何排序规 ...

  3. JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置

    众所周知,在进行接口测试的过程中,需要创建不同的场景(不同条件的输入,来验证不同的入参的返回结果).因而,在日常的自动化接口监控或商品监控等线上监控过程中,需要配置大量的入参来监控接口的返回是否正确. ...

  4. jmeter配置原件之使用CSV Data Set Config参数化

    测试过程中经常需要对发送的请求进行参数化,jmeter提供的CSV Data Set Config 配置元件可以很好的对请求数据进行参数化,下面介绍使用CSV Data Set Config参数化 1 ...

  5. JMeter 通过CSV Data Set Config 中文参数化数据,插入数据库后中文显示乱码,解决办法

    问题描述: 1. 需要设置中文参数化,模拟post请求,通过配置元件 - CSV Data Set Config 进行设置. 2. 数据库数据显示乱码(实际数据为 “测试001”) 解决办法: CSV ...

  6. Jmeter利用CSV Data Set Config 和 _CSVRead函数实现参数化

    测试接口时,当请求参数不是固定的,每次请求对应的参数都是不同的,就需要对请求参数进行参数化.我们这里简单介绍一下5个用户与一个用户建立好友关系. 一.测试需求描述 1. 本次测试的接口为http服务端 ...

  7. Jmeter CSV Data Set Config参数化

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

  8. Jmeter—6 CSV Data Set Config 通过文件导入数据

    线程组循环次数大于1的时候,请求里每次提交的数据都相同.有的系统限制了不能提交相同数据,我们通过 CSV Data Set Config 加载csv文件数据. 1 创建一个文本文件,输入参数值保存为. ...

  9. jmeter 通过csv data set config 设置参数化后,执行结果显示为<EOF>

    通过csv data set config 设置参数化后,执行结果显示为<EOF>: 反复确认相应的参数的设置均没有问题,其中csv文件编码方式采用uft-8.在csv data set ...

随机推荐

  1. C++_异常9-异常的注意事项

    一.先讨论异常被引发后,可能导致的问题 意外异常: 如果它是在带异常规范的函数中引发的,则必须与规范列表中的某种异常匹配,否则为意外异常.在默认情况下,这将导致程序异常终止(虽然C++11摒弃了异常规 ...

  2. 教你搭建SpringMVC框架( 附源码)

    一.项目目录结构 二.SpringMVC需要使用的jar包 commons-logging-1.2.jar junit-4.10.jar log4j-api-2.0.2.jar log4j-core- ...

  3. 【2-SAT】【并查集】NOIp模拟题 植树方案 题解

        一个类似2-SAT的思想,但是简化了很多.只需要用到并查集实现. 题目描述 企鹅国打算种一批树.所谓树,就是由$N$个结点与$N-1$条边连接而成的连通无向图.企鹅国的国王对于这些树有下列要求 ...

  4. HDU - 4291 循环节

    还有这种操作? #include<bits/stdc++.h> #define rep(i,j,k) for(register int i=j;i<=k;i++) #define p ...

  5. 神马是代码简单的cmd模式,这就是!

    小狼正在研究 “怎么查找连在一起的同色方块?”算法问题 ,突然感觉我是不是需要一种开发模式,不然感觉自己的代码好乱的. 可能是研究算法吧,导致小狼的思路特别清晰,加上也用了差不多1年的nodejs.s ...

  6. Mybatis 问题梳理

    问题一:There is no getter for property ... 接口 **Mapper.java 中执行方法: public List<E> listOption(Stri ...

  7. Linux——文件和文件夹的操作

    Linux有三种文件: 普通文件(包括文本文件.源码文件.可执行文件等等) 设备文件(或者成为特殊文件,linux通过设备文件与外部设备进行通讯,例如:光驱.打印机.终端.modern) 设备文件有两 ...

  8. Android应用中添加Log4j的示例

    [2016-06-30]最新的log4j已经集成在DR_support_lib库中 具体请看: https://coding.net/u/wrcold520/p/DR_support_lib/git/ ...

  9. linux 运维基础之http协议详解

    引言 这尼玛博客还得自己在这里写,难受一匹本来排版好的...每次都这样嗨....本内容属于借鉴资源,侵权删! HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系 ...

  10. mongodb insert()、save()的区别

    mongodb 的 insert().save()  ,区别主要是:若存在主键,insert()  不做操作,而save() 则更改原来的内容为新内容. 存在数据:  { _id : 1, " ...