Jmeter自动化一:读取csv参数化文件(post请求)

时间:2022-03-31 07:03:00

第一次写博客呀,莫名开心有木有Jmeter自动化一:读取csv参数化文件(post请求),俗话说好记性不如烂笔头,学东西一定要自己动手实践,因为经常都是我以为的并不是我以为的,操作过才知道原来如此。。。开始正题,这个东西其实挺简单的,不过还是花了大概3个小时,踩的坑有点多Jmeter自动化一:读取csv参数化文件(post请求)

文中有任何问题都可以喷,求轻喷***

一、打开jmeter程序

    打开jmeter,我用的是jmeter3.4


二、在jmeter外的文件中管理用例

    管理用例在excel中管理接口测试用例,模板如下,写完后记得要另存为.csv格式,不然是读取不了的(.txt和.dat也可以读取,但是不方便查看,最好是.csv)。      ps:坑1,直接用.xlsx格式,出来一堆乱码

Jmeter自动化一:读取csv参数化文件(post请求)

第一行的变量名可选择写在这里,或在CSV Data Set Config配置中写,二选一           PS:变量名不要用中文

这里的变量还可以根据实际的接口功能增加,比如是否连接数据库,尽量能满足不同类型的接口

三、jmeter设置

1.新建线程组

Jmeter自动化一:读取csv参数化文件(post请求)Jmeter自动化一:读取csv参数化文件(post请求)

有3个线程属性需要我们去设置,分别是

线程数,即同时启动的线程的数量,一般在压力测试的时候需要根据实际情况改动,在这里用例比较少,默认为1;

Ramp-Up Period(in seconds),启动时间,所有线程需要在这个时间内启动完成;

循环次数,就是用例运行多少次。

2.新建信息头管理器,没有会报错

Jmeter自动化一:读取csv参数化文件(post请求)

3.新建CSV Data Set Config

重点来了,csv参数化主要就是在这里完成的,

Jmeter自动化一:读取csv参数化文件(post请求)

参数说明:

Filename: 文件的完整路径,包括文件名和类型

File encoding:文件编码,好像不写也可以,开始写了utf-8报错了

Variable Names(comma-delimited):储存参数的变量名,如果在.csv文件中有写变量名就不需要写了,在这里写的话需要将每个变量名用“,”隔开

Delimiter(use '\t' for tab): 分隔多个参数的分隔符

Allow quoted data?:是否有引用数据,ps:如果参数中有逗号或双引号,要选为“true”

Recycle on EOF ?:文件读取完后是否继续读取

Stop thread on EOF ?:文件读取完后是否停止线程

4.添加http请求,ps:在这之前可以添加http协议控制器,jmeter3.4好似就不用了

    在请求中,基本上都是参数化了的,格式为“${参数}”,

Jmeter自动化一:读取csv参数化文件(post请求)      这样的话,我们只需要将所有的用例放在同一个.csv文件中,写一个http请求页面就能运行所有的用例(不要骗自己,把用例都放在excel里面还是不够灵活的,更好的自动化还要持续学习,比如python编程序实现)

5.增加响应断言

用来对比预期结果与实际输出是否一致,这个目前只实现了查询的接口,其他类型的还要研究...欢迎指导

Jmeter自动化一:读取csv参数化文件(post请求)

6.添加查看结果树,查看输出,展示下最后结果

Jmeter自动化一:读取csv参数化文件(post请求)

中间有两个结果红色的,响应数据是正确的,但是由于我把响应断言的内容改了,所以还是不会通过测试

问题跟进:接下来会把其他不同类型的接口加进来,把jmeter中添加的各种东西的参数意思弄清楚♫♪♬♩♫


自动化二:读取csv参数化文件(get请求+连接数据库)见下篇