最近有同事在测试过程中遇到需要造批量测试数据的问题,这些数据往往是同一种单据,但是单据的内容不同,如果手工创建就比较费时费力。那我们用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. 第二章 Session会话管理

    采用网址重写的缺点: 在有些Web浏览器中,URL限制为2000个字符. 仅当有链接要插入值时,值才能转换成后面的资源.此外,要把值添加到静态页面的链接中,可不是一件容易的事情. 网址重写必须在服务器 ...

  2. 开发板编译./camera显示-/bin/sh: ./camera: not found解决方案

    问题: 开发板根文件系统目录: 运行./camera显示: 问题解决: 1.排除根目录路径问题: 2. 加入静态链接库即无问题,但是编译后的".o"文件大小突增,而且也不可能每次编 ...

  3. CF510C Fox And Names——拓扑排序练习

    省委代码: #include<cstdio> #include<cstdlib> #include<cstring> #include<cmath> # ...

  4. 抽象数据类型与C++

    类是一种新的数据类型,类似于数据结构,只是它拥有数据结构所没有的部分——“成员函数”,正是因为它所拥有的成员函数这一特性,使得它能隐藏“数据结构”(类)中的数据,不被用户所知道.通过类中的成员函数,使 ...

  5. 浅谈hosts文件

    1.什么是hosts文件?这个文件在哪? hosts文件(域名解析文件)是将主机名映射到IP地址的一个纯文本文件,原始名称是HOSTS.TXT(IP,Internet Protocol,Interne ...

  6. 十九、表添加字段的SQL语句写法

    通用式: alter table [表名] add [字段名] 字段属性 default 缺省值 default 是可选参数增加字段: alter table [表名] add 字段名 smallin ...

  7. php 常用函数总汇

    php 使用命令行函数exec($sql,$result,$status); $sql 命令   $result  返回东西  $status成功与否的状态 例如: php使用命令行去执行数据库备份( ...

  8. rm -rf /*时遇到的趣事

    今天在一个linux群里面闲逛的时候,突然看见一个愤青把自己的linux系统给 rm -rf /* 了 ,感觉很好玩就看了一下,突然我发现了有趣的事情! 我的朋友问我,这个为什么显示没有删除,我看了确 ...

  9. 灵活使用Maven Profile

    项目中一直应用Maven的profile特性解决不同环境的部署问题.最近在尝试解决本地调试环境的时候碰到一些问题,顺便仔细研究了一下.因为项目仍然在用普通SpringMVC架构,没有切换到Spring ...

  10. 彻底搞懂Python切片操作

        在利用Python解决各种实际问题的过程中,经常会遇到从某个对象中抽取部分值的情况,切片操作正是专门用于完成这一操作的有力武器.理论上而言,只要条件表达式得当,可以通过单次或多次切片操作实现任 ...