51Testing软件测试论坛

标题: 为小白量身打造的,Jmeter压力测试使用流程 [打印本页]

作者: lsekfe    时间: 2022-7-5 10:30
标题: 为小白量身打造的,Jmeter压力测试使用流程
假如你刚到公司参加实习,学习使用Jmeter进行网页端接口压力测试,那这篇文章一定要看。
  软件介绍
  可以直接从网上下载相关压缩包,解压后在bin目录下找到jmeter.bat文件打开使用。
[attach]138757[/attach]
打开后界面:
[attach]138758[/attach]
可在Options/ChooseLanguages里切换语言,方便使用。
  使用流程
  1、创建线程组
  右键TestPlans选择添加/线程(用户)/线程组:
[attach]138759[/attach]
已创建好好线程组,进入线程组设置页面:
[attach]138760[/attach]
各参数意义:
  1.线程数:并发数。如图设置50为模拟50个用户进行压力测试。
  2.Ramp-Up Period (in seconds):并发用户加载时间。图中设置为1表示一秒内加载50个用户进行测试。
  3.循环次数:并发执行循环次数,一次测试下,总的请求数量=线程数 * 循环次数;“永远”勾选上后循环一直进行,直到手动选择停止。如图设置为进行50000次请求。
  Ctrl + S保存后会生成一个.jmx文件,方便存取。
  2、添加取样器
  常用为http请求,以下皆用http作为示例。
  右键线程组→添加→取样器→http请求。
[attach]138761[/attach]
选择后打开http请求设置窗口:
[attach]138762[/attach]
各参数意义:
  1.协议:请求协议类型,设置为http或https。如图为http。
  2.服务器名称或ip:具体的ip地址(如:192.168.xx.xx)或域名(如:xx.com)
  3.端口号:顾名思义,所用端口号(如:80)
  4.方法:即请求方式,常用的如get post等
  5.路径:所测试接口具体路径。
  6.参数:请求具体的参数。get请求一般用键值对直接传递,可在下方添加。post请求如果使用json传参,要先设置http信息头管理。详见下。(! ! 注:参数设置之后一定要 ctrl+s保存!)
  http信息头管理
  以post类型json传参为例:在下方添加信息头,设置名称为:content-type;设置值为:application/json。
  3、添加监听器
  右键线程组→添加→监听器→查看结果树/汇总报告/聚合报告:
[attach]138763[/attach]
添加完成后,可看到左侧目录树结构:
[attach]138764[/attach]
之后可以点击上方工具栏绿色三角[attach]138766[/attach]运行,或者直接右键线程组启动。
4、查看结果
  选择结果树查看各个请求信息。也可以查看汇总报告和聚合报告。
  聚合报告各个参数意义
  1、Lable:Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值;
  2、#Samples:表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100;【我的是用户有100,只迭代一次,因此也是100】
  3、Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间;
  4、Median:中位数,也就是 50% 用户的响应时间;
  5、90% Line ~ 99% Line:90% ~99%用户的响应时间;
  6、Min:最小响应时间;
  7、Maximum:最大响应时间;
  8、Error%:本次测试中出现的错误率,即 错误的请求的数量/请求的总数;
  9、Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction ;
  10、Received KB/src:每秒从服务器端接收到的数据量;
  11、Sent KB/src:每秒从客户端发送的请求的数量。










欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2