1. 添加CSV Data Set Config
右键线程组->配置元件->CSV Data Set Config
2. 配置
新建test.cvs文件内容如下
CSV Data Set Config参数说明:
Filename:文件名,,指保存信息的文件目录,可以相对或者绝对路径
Variable Names:参数名称(有几个参数,在这里面就写几个参数名称,每个名称中间用分隔符分割,分隔符使用下面的“Delimitet”中定义的
File Encoding:文件编码,默认为ANSI
Delimitet:定义分隔符,用于分隔文件中的参数,及上述Variable Names中定义的参数名称
Recycle on EOF:遇到文件结束符时,是否从头开始循环读入
注:程序从CSV Data Set Config文件中,每次读取一行,每次读取的参数仅供一个线程使用(类似Loadrunner里面的参数唯一值功能),如果线程数超过文本的记录行数,那么可以选择 True (从头再次读取)
Stop Thread on EOF: 当Recycle on EOF为False并且Stop Thread on EOF为True,则读完csv文件中的记录后, 停止运行
Allow Quoated data: True --设置文件中的参数值都必须用引用引起来,False则不需要
Sharing Mode: 设置是否线程共享
3. 参数化
${argue_name} 的方式引用Variable name
4. 查看结果
4个线程,发起4个请求,每个请求使用一个参数
使用场景:测试一个接口并发处理数据的能力,并且每次请求传入的参数都要不同:
列举一个实例,步骤中会侧重读取参数操作的说明,其他有疑问的步骤请查阅博主之前Jmeter相关的文章。
1、创建HTTP请求默认值---为了指定请求的服务器信息
2、创建HTTP信息头管理器---为了在Headers中传值
3、创建HTTP采样器---我们的请求任务
填好Http请求方式和请求路径,请求参数用变量方式引用进来,变量来源于CSV Data Set Config配置:
(1)添加CSV Data Set Config
(2)配置CSV Data Set Config
- Filename:需要传入的参数所位于的文件名称,一定要填写完整路径,博主填写的绝对路径。
- File encoding:参数文件的编码格式。可以不填。
- Variable Names:对应参数文件中每列的变量名,也是你要引用到请求中的参数变量名。例如博主填写的值为ecsCode,在http请求中引用该参数时${ecsCode}
- Delimiter:文件中的分隔符,一般用英文的逗号分隔开即可。
- Allow quoted data?:是否允许引用数据。博主没有用到,默认设置为 false。
- Recycle on EOF?:是否循环读取参数文件内容。设置为 true 时,意味着已经读取完参数文件内的测试用例数据时,线程循环次数仍然没有结束,那就循环读取参数文件数据;设置为 false 时,若已至文件末尾,则不再继续读取测试数据。
- Sotp thread on EOF?:当读取到参数文件末尾时,是否停止读取线程。默认为 false。当 Recycle on EOF? 设置为 true 时,此项不起任何作用。当且仅当 Recycle on EOF? 为 false 时,此项配置才生效。
- Sharing mode:共享模式,即参数文件变量作用域,博主没用到就不关注他。
(3)在文本中填写参数
- 该文件所在的路径即为CSV Data Set Config配置元件中的Filename值;
- 博主只传入一个参数,所以只有一列,如果有两个参数,会有两列数据,并用英文逗号隔开;引用参数时,CSV Data Set Config配置元件中Variable Names填写两个变量,也用英文逗号隔开即可
- 有10行数据,意味着10条测试用例,我会设置线程循环10次。这也是为什么我会在CSV Data Set Config配置元件中Recycle on EOF填写False
循环次数设置为10,意味着该条请求只执行10次。
Ramp-Up Period设置为0,意味着10条请求同时发出。如果设置为5,意味着5秒内发起10条请求,平均1秒发出2条。
(4)在请求中引用参数
4、增加一个响应断言,意味着返回数据包含“执行成功”字样,任务成功
5、添加监听器-察看结果树
转载:http://blog.sina.com.cn/s/blog_13cc013b50102wcx2.html
https://www.cnblogs.com/LiangHu/p/6233203.html