前言

一般来说,我们使用Jmeter来模拟HTTP请求时,比如模拟查询学生信息,我们通常把查询接口的入参(如学生姓名)写在HTTP请求中。当只需要查询1个学生的信息时,我们可以把这名学生的姓名准确的写到入参中,但假如需要依次去查10个学生的信息时,我们需要怎么做呢?

  • 我们也可以再添加9个请求,这就可以查询10个学生的信息,但很明显,这种方法用起来太死板了,当我们要查询100个学生信息时,我们不可能在一个线程组中建100个请求去模拟查询。

  • 我们注意到,这10个请求入参,除了学生姓名,其他的设置都是一致的。因此,最好的办法是参数化。在HTTP请求中,我们不要把请求入参值写死了,把学生姓名当成变量,这样不管每次传入什么值,我们都可以只用1个请求来处理。

Jmeter参数化

接下来,我们主要学习下Jmeter的参数化--CSV Data Set Config(CSV 数据文件设置)。

  • 1、准备数据文件

我们要测试的接口及接口文档来自网上项目:http://doc.nnzhp.cn/index.php?s=/6&page_id=12 。我们通过下面2个接口来学习Jmeter参数化。

查询学生信息接口:http://api.nnzhp.cn/api/user/stu_info
登录接口:http://api.nnzhp.cn/api/user/login

在这里,我们需要准备2个txt文件,如下:

  • 2、添加 CSV Data Set Config

首先,建议测试计划和添加线程组就不多说了,我们选择右键->添加->配置元件->CSV 数据文件设置,添加后就可以配置其参数。

参数说明
文件名:这里填写参数化数据文件的路径,如D:/文件名。
文件编码:一般选择UTF-8
变量名称:参数化文件中每列参数的名称,如果有多列参数,则加上英文逗号间隔(如文件2)
其他的参数如无特殊需要,我们一般保持默认即可。

  • 3、在请求中引入参数

在引入参数时,我们需要注意,参数的名称必须和上一步骤中设置的变量名称一致。

在这里,从接口文档中了解到,返回参数中,当错误编码error_code为0表示操作成功,因此设置了JSON断言来对结果进行断言。

  • 4、线程组设置循环次数

一般来说,我们的参数化文件有多少行数据,我们就设置为多少次。在这里,根据需要设置循环次数为2,每次会读取文件中的一行数据。

最后,运行,得到察看结果树的情况如下:

可能出现的异常问题:

有时候,在使用txt文件参数化时,请求数据出现乱码,如下:

此时,需检查CSV数据文件设置中的编码格式是否为UTF-8,同时确保txt文件的编码也是UTF-8,最好是新建1个文件,把原文件内容直接复制过去,并保存的文件编码格式选择为“UTF-8”。

如有错误,欢迎指出!

Jmeter参数化-CSV Data Set Config的更多相关文章

  1. 参数化CSV Data Set config元件

    参数化CSV Data Set config元件 CSV Data Set config可以从指定的文件(一般是文本文件)中一行一行地提取文本内容,根据分隔符拆解这一行内容并把内容与变量名对应上,然后 ...

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

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

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

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

  4. jmeter笔记(5)--参数化--CSV Data Set Config

    为了保证脚本的可移植性,我们需要把数据提取出来作为变量,变量可以分为两类: 公用变量:IP.端口.附件路径.CSV文件路径等: 测试变量:用户名.密码.用户ID.商品ID等 使用CSV Data Se ...

  5. Jmeter入门6 参数化—CSV Data Set Config 通过文件导入数据

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

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

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

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

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

  8. Jmeter(7)参数化csv data set config

    接口测试同一变量或同一组变量不同值时,可通过csv data set config配置数据 1.创建文本文件,写入参数值,一个或一组值为一行,保存为.csv文件 2.创建测试计划,配置元件添加csv ...

  9. jmeter 通过CSV Data Set Config控件参数化

    CSV Data Set Config控件配置如下: 被导入的.csv 文件内容如下 用excel打开如下 设置中url2对应:cn.toursforfun.com 和 www.163.com url ...

随机推荐

  1. python学习-tuple

    # 元组.关键字:tuple# 定义好了,就不可以修改.只能读.数据之间全部都是用,隔开.# 定义:()my_tuple = () # 空元组my_tuple2 = ("xj",& ...

  2. NodeJS2-6环境&调试----debug

    13_debug.js //测试的脚本 function test1() { const a = parseInt(Math.random() * 10); const b = parseInt(Ma ...

  3. springboot 集成jsp

    建立好springboot项目,确定能成功运行 在application.properties文件中添加 server.context-path=/bootserver.port=8080spring ...

  4. 安装完PyCharm,启动时弹出Failed to load JVM DLLbinserverjvm

    安装完PyCharm,启动时弹出"Failed to load JVM DLL\bin\server\jvm.dll"解决方案 问题描述:打开PyCharm时,弹出"Fa ...

  5. ArcGIS JS 4加载第三方矢量切片

        现在矢量切片越来越普及,对于地图渲染能更轻更快.ArcGIS JS 4.13可以实现加载第三方矢量切片,以下为代码示例,最下方是我之前切的建筑物数据.     当切片大小在1M左右,加载效果还 ...

  6. Dynamics 365 Portal 修改注册页面及Profile页面

    一,Profile页面 客户要求在Portal Profile页面上添加性别字段,通过查看源代码发现,中间的联系人信息部分是引用的CRM中Contact实体的Portal Web Form表单,直接把 ...

  7. Linux文本处理三剑客之sed

    推荐新手阅读[酷壳]或[骏马金龙]开篇的教程作为入门.骏马兄后面的文章以及官方英文文档较难. [酷壳]:https://coolshell.cn/articles/9104.html [骏马金龙-博客 ...

  8. 4.Redux学习4----react-redux

    react-redux是配合redux一起使用的,其中核心组件是Provider Provider是store的提供器,用Provider则store就无需直接引入组件内,而且还可以将一个store公 ...

  9. mysql存储4字节的表情包数据报异常_Emoji表情包_Incorrect string value: '\xF0\x9F\x98\x84\xF0\x9F

    本文章转载自:https://www.cnblogs.com/coprince/p/7485968.html 原文如下: 问题描述:从新浪微博抓取消息保存到MySQL数据中,对应数据库字段为varch ...

  10. Java中的日期与时间

    日期与时间 最常用的几个类,Date.DateFormat.Calendar.Locale Date 1.无参构造方法 //根据当前系统默认的毫秒值创建时间对象 public Date() { thi ...