最近有同事在测试过程中遇到需要造批量测试数据的问题,这些数据往往是同一种单据,但是单据的内容不同,如果手工创建就比较费时费力。那我们用jmeter的csv文件来读取测试数据就完美解决了这个问题。

我们今天使用Jmeter5.1.1调用博客园的开放API来举例,接口信息如下:

获取新闻内容

Url: http://wcf.open.cnblogs.com/news/item/{CONTENTID}

HTTP Method: GET

csv文件准备

  1. 新建一个文本文档,然后把后缀.txt改成.csv,使用notepad或者记事本打开(这里使用的是notepad)
  2. 将我们的批量测试数据 CONTENTID(新闻Id)写进来

添加CSV数据文件设置

  1. 添加CSV数据文件设置:打开jmeter -> 右键测试计划 -> 添加配置元件 -> CSV 数据文件设置

创建HTTP请求

  1. 创建HTTP请求:打开Jmeter -> 右键测试计划 -> 添加-线程-线程组 -> 右键线程组 -> 添加-取样器-HTTP请求



  2. 添加查看结果树:右键HTTP请求 -> 添加-监听器-查看结果树

  3. 将上面的接口信息复制到HTTP请求中,一切准备就绪如下图:

运行并查看结果

  1. 设置线程数和循环次数后启动(这里我设置的是1个线程循环15次):

  2. 查看结果树,发现的CONTENTID已经是CSV数据文件中的数据了,响应数据就是对应Id的内容。

最后,我们回到开始的问题,造大量的不同内容的相同单据。我们使用CSV文件来存不同的内容,使用jmeter来循环调用创建数据的接口,这样就不用手动再去创建单据了,既省时又省力。

CSV文件设置参数说明:

参数 说明
文件名 你的CSV数据文件的路径
文件编码 例如可以是UTF-8。那么jmeter就会以UTF-8读取文件
变量名称 以逗号分隔的名称列表,它与CSV文件中的列相匹配。
忽略首行 如果第一行是列名而不是测试数据,就选择True忽略掉列名
分隔符 默认为','也可以设置为其他值(建议使用默认)
是否允许带引号 默认为False,如果测试数据中带有引号则设置为Ture
遇到文件结束符再次循环 默认为True,意思读完最后一行在回来读取第一行
遇到文件结束符停止线程 读完最后一行停止线程
线程共享模式 定义如何在并发线程之间分配值

Jmeter使用csv文件读取测试数据的更多相关文章

  1. Jmeter之CSV文件读取

    注意execl表生成的CSV文件的文件编码是GB2312和分隔符就好了

  2. CSV文件读取类

    最近项目中,经常需要读取Csv文件.基本步骤是: (1)按行读取 (2)然后将一行数据按逗号,分割为字符串数组 (3)将各列字符串转换成相应类型的数据 ,如int double类型 写了一个简单的Cs ...

  3. Python文件处理(txt、csv文件读取)

    打开文件 使用Python内置的方法 open()可以打开文件 file object = open(file_name [, access_mode][, buffering]) file_name ...

  4. jmeter接口性能测试【CSV文件读取+接口关联+设置集合点】

    一.前言 周计划上安排了个接口性能测试的任务,便开始了职业生涯的第一个接口性能测试... 接口进行压测之前,首先需要调通脚本.有两种方式,一种是通过抓包工具(如fiddler)抓取业务接口:另一种是通 ...

  5. jmeter接口自动化-通过csv文件读取用例并执行测试

    最近在公司测试中经常使用jmeter这个工具进行接口自动化,简单记录下~ 一.在csv文件中编写好用例 首先在csv文件首行填写相关参数(可根据具体情况而定)并编写测试用例.脚本可通过优先级参数控制执 ...

  6. Jmeter系列(33)- 跨平台运行 Jmeter,CSV 文件路径如何设置?

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 抛出问题 上一篇文章中详细讲解了 CS ...

  7. Spring-Batch CSV文件读取时的注意点

    按照Spring Batch 之 Sample(CSV文件操作)(四) 的方式配置好csvItemReader, 发现读入的数据很是奇怪,通过修改配置文件发现, commit-interval=&qu ...

  8. jmeter 使用csv文件 注意项

    1.首先在jmeter 中导入csv文件时我们程序并不知道csv文件中有多少行 : >1.获取的时候 使用 循环控制器来获取csv文件中的所有数据 : 通过 ${__jexl3("${ ...

  9. TensorFlow从0到1之TensorFlow csv文件读取数据(14)

    大多数人了解 Pandas 及其在处理大数据文件方面的实用性.TensorFlow 提供了读取这种文件的方法. 前面章节中,介绍了如何在 TensorFlow 中读取文件,本节将重点介绍如何从 CSV ...

随机推荐

  1. 9.秋招复习简单整理之Spring面试AOP和IOC的理解

    1.Spring的AOP理解: OOP面向对象,允许开发者定义纵向的关系,但不适用于定义横向的关系,导致了大量代码的重复,而不利于各个模块的重用. AOP,一般称为面向切面,作为面向对象的一种补充,用 ...

  2. VUE-CLI3.0脚手架安装

    文档:https://cli.vuejs.org/zh/guide/ 条件: npm 更至最新 node >=8.9 1.全局安装 npm install -g @vue/cli 或 yarn ...

  3. mysql中id值被重置的情况

    MySQL中,如果你为一张使用了innodb引擎的表指定了一auto_increment列,那么这张表会有一个auto_increment计数器,专门记录当前auto_increment的相关值,用来 ...

  4. java算法题每日一练01,java入门简单算法题小练

    1.给数组做反序 public class Ak01 { public static void main(String[] args) { int[] a = new int[]{22,48,41,2 ...

  5. 使用java语言基于SMTP协议手写邮件客户端

    使用java语言基于SMTP协议手写邮件客户端 1. 说明 电子邮件是互联网上常见的应用,他是互联网早期的产品,直至今日依然受到广大用户的喜爱(在中国可能因为文化背景不同,电子邮件只在办公的时候常用) ...

  6. Excel催化剂开源第49波-Excel与PowerBIDeskTop互通互联之第三篇

    在PowerBIDeskTop开启的SSAS服务,和Sqlserver所开启的一个本质的区别是,前者其端口号是随机生成的,即上一次打开获得的端口号,下一次关闭后再打开,系统分配给它新的端口号,而后者因 ...

  7. dll附加依赖项查看——dumpbin 命令

    VS自带工具 查看程序或动态链接库需要的动态链接库 dumpbin /dependents d:\test.exe 查看动态链接库的输出函数 dumpbin /exports d:\libmysql. ...

  8. JedisClient操作redis 单机版和集群版

    一.在pom文件中添加依赖 <!-- https://mvnrepository.com/artifact/redis.clients/jedis --> <dependency&g ...

  9. 【Java中级】(四)多线程

    线程的概念 进程和线程的主要差别在于它们是不同的操作系统资源管理方式.进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径.线程有自己的堆栈和局 ...

  10. SQL Server 设置默认数据库

    STEP 1 调用系统函数 查看SQL Server的当前用户名 SELECT SUSER_NAME(); NOTE : 系统函数的调用跟sql语句执行一样 Paste_Image.png 运行结果 ...