使用JMeter3.0实战之分布式并发测试以及web API接口测试

时间:2022-04-29 07:14:00

该文档是以Apche JMeter-3.0为例进行编写的,通过网上的学习资料和官方文档的说明手册学习后,进行项目操作实践,将测试的过程记录下提供给大家学习。

本博文的内容主要是进行配置JMeter的测试参数,进行并发测试,分布式测试和收集服务器端的性能参数以及如何去测试web api接口的方法。

本博文以工作的项目作为并发测试的实验案例。如果有错误,请大家指出。

1.使用Badboy录制Web性能测试脚本 1.1使用Badboy工具进行录制Web性能测试脚本

(1)启动Badboy。首次启动Badboy时,录制按钮默认处于选中状态,如图所示中的红色小圆点。

使用JMeter3.0实战之分布式并发测试以及web API接口测试



(2)在Badboy工具地址栏中输入测试网址,然后按回车键。Badboy工具会使用内置的浏览器访问对应的网址,如图所示。

使用JMeter3.0实战之分布式并发测试以及web API接口测试

(3)在Badboy工具打开的页面中完成登录所需的各项操作,接下来可以在左上角的脚本框中看到录制产生的测试脚本,如图所示。

使用JMeter3.0实战之分布式并发测试以及web API接口测试

1.2 导出Badboy测试脚本 (1)在Badboy中完成脚本录制后,可以将测试脚本导出成JMX格式,以便后续供JMeter使用,如图所示。

使用JMeter3.0实战之分布式并发测试以及web API接口测试

2.创建Web测试计划 2.1 导入Badboy录制的测试脚本 (1)打开Jmeter->File->Open,选择保存的Badboy录制的测试脚本后,点击打开按钮。

使用JMeter3.0实战之分布式并发测试以及web API接口测试

2.2 配置属性和参数 (1)选中HTTP Header Manager后,根据测试的需求,可以修改Headers Stored in the Header Manager中的信息,以本案例为主,添加Content-Type键值对。

使用JMeter3.0实战之分布式并发测试以及web API接口测试

设置HTTP Header的信息

使用JMeter3.0实战之分布式并发测试以及web API接口测试

设置HTTP Request的配置信息

使用JMeter3.0实战之分布式并发测试以及web API接口测试

设置HTTP Request的配置信息,并设置发送的参数内容

2.3 参数化

(1)函数助手可以用过ctrl-F打开,通过函数助手找到_CSVRrad方法,输入参数文件的路径,CSV文件列号是从0开始的,第一列0、第二列1、第三列2、依次类推。

然后点击【生成】按钮,则会自动生成我们需要的参数化函数。

使用JMeter3.0实战之分布式并发测试以及web API接口测试

打开参数化窗口

使用JMeter3.0实战之分布式并发测试以及web API接口测试

设置参数化文件和取得参数化的列

(2)复制生成的参数化函数,打开登陆请求页面,在右则的参数化中找到我们要参数化的字段,这里对用户名和密码做参数化,第一列是用户名,列号为0;

第二列是密码,列号为1;修改函数中对应的参数化字段列号就可以啦。

使用JMeter3.0实战之分布式并发测试以及web API接口测试

2.4 正则表达式 (1)由于项目为了防止CSRF攻击,所以页面上会添加了令牌,在页面中可找到该信息串,如果当前页面要获取到该字符串,必须要在上一个页面中发送http请求后,

从该请求的响应中提取出该字符串,提取时使用的是正则表达的方式。