JMeter如何进行性能测试

jmeter工具除了可以进行接口功能测试外,还可以进行性能测试。当项目趋于稳定,根据性能需求就可以着手准备性能测试了,今天就说一说jmeter如何进行性能测试,jmeter进行性能测试的前提是接口的功能逻辑是通的,没有阻塞bug。

第一步:设置线程数量

第二步:添加事务控制器
根据业务场景设置事务,将需要进行并发测试的接口拖拽到事务控制器节点下,输出性能测试报告后可以查看该事务的性能测试结果 

第三步:设置同步定时器,同步定时器主要设置两个参数
Number of Simulated User to Group by:每组模拟的用户数,用来控制父节点请求的最大并发数是多少,如果设置为50,表示最大50个线程并发执行;

Timeout in milliseconds:超时时间(毫秒),如果设置为3000,表示如果3秒内50个线程到达父节点则立即并发运行。如果30内未达到50个线程,则有多少线程并发执行多少线程。

 第四步:添加监听器

Graph Results:图形结果,查看运行趋势

View Results in Table:用表格查看结果,查看运行的明细

Summary Report:聚合报告,统计响应信息并提供请求数,平均值,最大,最小值,错误率,大约吞吐量(以请求数/秒为单位)和以kb/秒为单位的吞吐量

Transactions per Second:每秒事务数,每秒钟系统能够处理的交易或事务的数量,它是衡量系统处理能力的重要指标。

Hits per Second:每秒点击率,象征着压力大小

 第五步:通过非GUI模式运行脚本,并分析性能测试报告,输出测试结果

性能测试评价:真对增加稿件事务进行1000UV并发测试时,平均事务响应时间1.67秒,最大2.99秒,均符合需求(<3秒),但是CPU使用里大于80%,存在瓶颈;期间由于连接服务器失败(Non HTTP response code: java.net.ConnectException/Non HTTP response message: Connection refused: connect),导致错误率达到了31.2%,远超5%,存在瓶颈。

压力测试是一个循序渐进的过程,比如每次压力之前设置100,300,500,800,1000,1500,2000,......线程,分析每次压力测试的结果,同时可以设置循环次数查看长时间并发情况下的性能结果,由于时间关系我只压了一次。最后,性能指标需要达到四个标准即:多、快、好、省,时间特性(响应时间快)、处理效率高(TSP),长时间运行稳定,资源特性(系统资源使用率低)。设置好业务场景也是非常关键的,否则测试的结果是不符合业务需求的。 

测试流程:

需求分析→环境搭建→测试计划→脚本开发→执行与监控→缺陷管理→结果与报告
压力测试
1、线程组设置,这里的线程数与同步定时器的用户数量一样
2、添加HTTP cookie管理器
3、默认请求值
4、添加一个事务控制器,可以当作一个业务
5、在事务控制器下添加,同步定时器
设置用户数量,这里与线程组的线程数一样,超时时间可设置
6、添加脚本(http请求)
7、添加查看结果树
8、添加->监听器
9、在最后添加一个聚合报告,添加处:添加->监听器
负载测试实战
1、线程组的设置50个用户(持续时间:按秒计算,这里300=60*5,意思就是运行时长为5分钟)
2、添加HTTP cookie管理器
3、默认请求值
4、添加一个事务控制器,可以当作一个业务
5、在事务控制器下添加,高斯随机定时器
总的延时 = 固定延迟时间 + 高斯随机生成的偏差值(说明:单位都是毫秒,固定延迟300ms,偏差100ms,意思是时间延迟300-400ms之间)
6、添加脚本(http请求)
7、添加->监听器
8、在最后添加一个聚合报告,添加处:添加->监听器

3. 页面响应耗时可以提前预知吗?
在测试阶段是否能够发现页面响应慢

当然可以

如何在测试阶段发现页面响应慢?

模拟大量用户访问
监控每个请求的响应是否准确
监控服务器的资源使用
第2章 性能测试认知
1. 企业级软件为什么要做性能测试
历史上由于性能问题引发的事件
12306网站崩溃,用户购票失败
淘宝双十一网站崩溃
网站崩溃或慢对用户的影响
离开
企业为什么要做性能测试?
提升用户体验
细化性能测试的目的
预估软件性能瓶顶,预估软件优化时间
验证是否存在多并发的逻辑问题
2. 什么是性能测试?

性能是用来描述产品除功能外的所具有的速度,效率和能力的综合能力评价

对产品或是物品的性能惊喜定性或是定量的量测过程

在这个过程中我们使用一些工具来进行场景的模拟,从而进行性能测试

3. 性能测试案例
测试需求:测试20个用户访问网站在负载达到30QPS时的平均响应时间
QPS:Query Per Second 每秒查询率。(一台查询服务器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值