文档仅供参考
4.1环境与数据准备 4.1.1负载测试
主机 数量 配置详情 操作系统 数据库 中间件 测试工具 监控工具 4.1.2压力测试
主机 数量 配置详情 操作系统 数据库 中间件 测试工具 监控工具
4.1.3前端连接测试 略
4.2测试步骤与测试结果输出 4.2.1负载测试 4.2.1.1测试工具 Jmeter
Apache JMeter是Apache组织开发的基于Java的压力测试工具,用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其它测试领域。 它能够用于测试静态和动态资源,例如静态文件、Java小服务程序、CGI 脚本、Java 对象、
9
2020年4月19日
文档仅供参考
数据库、FTP 服务器等等。
4.2.1.2测试步骤
1.建立测试计划
启动jmeter后,jmeter会自动生成一个空的测试计划,用户能够基于该测试计划建立自己的测试计划。 2.添加线程组
一个性能测试请求负载是基于一个线程组完成的。一个测试计划必须有一个线程组。测试计划添加线程组非常简单。在测试计划右键弹出下拉菜单(添加-->Threads(Users)--->线程组)中选择线程组即可。
jmeter中 每个测试计划至少需要包含一个线程组,当然也能够在一个计划中创立多个线程组,那么多个线程组之间又会怎样的顺序执行(串行还是并行)?在测试计划下面多个线程是并行执行的,也就是说这些线程组是同时被初始化并同时执行线程组下的Sampler的。
10
2020年4月19日
文档仅供参考
线程组主要包含三个参数:线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。
线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。
准备时长: 设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为10 ,那么需要10秒钟启动20个线程。也就是每秒钟启动2个线程。
循环次数:每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总请求数为
11
2020年4月19日
文档仅供参考
20*100= 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。
设置合理的线程数对于能否达到测试目标有决定性的影响。在本例中,要求得到网站首页在20 QPS 负载情况下的响应时间,如果如果线程数量设置的过小,则很可能无法达到设定的QPS要求。另外,设置合理的循环次数也很重要,除了上面介绍的固定循环次数与永远外;也能够灵活的选择设定测试运行时间。勾选“调度器”,进行调度器配置。
3. 添加HTTP请求
添加完成线程组后,在线程组上右键菜单(添加--->Sampler--->HTTP请求)选择HTTP请求。对于jmeter来说,取样器(Sampler)是与服务器进行交互的单元。一个取样器一般进行三部分的工作:
向服务器发送请求 记录服务器的响应数据 记录相应时间信息
12
2020年4月19日