用Jmeter做web端接口的负载测试

一、 JMeter线程组设置解释

1、线程数:相当于虚拟用户数

2、Ramp-Up Period(in seconds):启动所有线程的时间。

      若值为0,则代表立即创建所有线程,即代表同时并发

      若值为N,且线程数为M,则代表每隔N/M秒建立一个线程:比如线程数是100个,Ramp-Up Period(in seconds)的值是300          秒,则代表每隔3秒(300/100)建立一个线程

3、循环次数:包括固定循环次数和永远循环(不设置次数仅控制循环时间)

    1) 固定循环次数:想循环几次就填写几

    2)不设置次数仅控制循环时间,即循环次数勾选“永远”:该模式是为了观察服务器在一个时间段内,维持某种并发的运行情况。

        具体设置情况如下图:勾选永远->勾选调度器->根据需要设置调度器

       用Jmeter做web端接口的负载测试_第1张图片

二、 “查看”接口测试

1、用badboy录制登录和进入日报操作的脚本->导出至jmeter格式

   用Jmeter做web端接口的负载测试_第2张图片

备注:

   1)如果要衡量一个页面(页面渲染完成)的性能时,我们就需要考虑完成页面渲染所需要的图片、css和js等资源文件,因此用Jmeter录制脚本

   2)  如果仅测试某操作的响应时间,比如:登录,则就用badboy录制脚本。因为badboy不会录制图片、css和js等资源文件

2、导入至Jmeter之后,在线程组下新增HTTP Cookies管理器

3、用fiddler抓包工具或者直接用谷歌浏览器中的开发者工具调试页面中,抓取并查看登录时的cookie信息

  注意:若JSESSIONID的值失效,可重新抓包,然后修改值即可

   

                                                     fiddler抓包工具

   用Jmeter做web端接口的负载测试_第3张图片

                                                      开发者工具

4、在步骤2中的HTTP Cookies管理器中加入cookie,注意该处的域名一定要写上,不能为空或写成ip,否则无效。

   用Jmeter做web端接口的负载测试_第4张图片

5、在要测试的请求下添加察看结果树、汇总报告、响应断言和断言结果

   用Jmeter做web端接口的负载测试_第5张图片

   1)在响应断言中添加测试模式(其中项目名称是包含在日报界面中的字符串,用以判断请求是否成功)

   用Jmeter做web端接口的负载测试_第6张图片

 

   2)运行过后的断言结果,没有报错即为通过

   用Jmeter做web端接口的负载测试_第7张图片

6、在线程组中按照需求输入线程数、时间和循环次数

   1)可以先设置为一个线程数,查看该响应数据是否正确,若正确,再按照需求设置线程组中各参数

   2)把无关的请求,甚至包括登录请求均禁用(因为已经设置过cookie信息)

   3)本次压测是针对进入日报界面,仅留该请求即可

   用Jmeter做web端接口的负载测试_第8张图片

7、执行脚本,查看察看结果树中结果

   用Jmeter做web端接口的负载测试_第9张图片

8、查看汇总报告中结果:

   用Jmeter做web端接口的负载测试_第10张图片

三、“登录”接口测试

1、登录接口重定向问题:

如果登录接口使用了url重定向,则需要勾选Follow Redirects(跟随重定向)

用Jmeter做web端接口的负载测试_第11张图片

解释如下:

http://tieba.baidu.com/p/5630956691

用Jmeter做web端接口的负载测试_第12张图片

2、对用户名和密码进行参数化:

    1)测试数据中账号和密码用英文逗号隔开:

     

    2)在要测试的请求下添加CSV Data Set Config,设置测试数据文件路径、编码和参数名(与接口请求数据中参数名一致)

用Jmeter做web端接口的负载测试_第13张图片

    3)设置请求数据中的用户名和密码Value值如下格式:

用Jmeter做web端接口的负载测试_第14张图片

四、 测试报告生成

1、先在JMeter中配置好运行参数,线程数和运行时间等

2、打开cmd,用cd命令进入到jmeter文件所在的路径(文件名叫:login.jmx),若放到了桌面上,则命令如下:

3、输入jmeter.bat所在路径(E:\CYX-documents\apache-jmeter-5.1.1\bin\jmeter.bat)和执行命令(-n -t login.jmx -l test_report_01.csv -e -o test_report_01),如下:

4、 生成的文件和文件夹如下:

用Jmeter做web端接口的负载测试_第15张图片

5、 打开文件夹中的index.html文档即可

用Jmeter做web端接口的负载测试_第16张图片

你可能感兴趣的:(性能测试)