读书笔记之LoadRunner性能测试巧匠训练营(二)

《LoadRunner性能测试巧匠训练营》第1章 与性能测试的亲密接触

4.性能测试分类详解

4.1 基准测试

基准最简单的理解就是有基础的标准,这样能通过对比发现系统的不同点与变化。一般情况下,基准测试有以下几种应用场景。

1)可以在制定的标准下通过基准测试建立一个性能基准,这样以后当系统的环境、参数发生变化之后,再进行一次相同标准下的测试,即可看出变化对性能的影响。

2)系统进行基准测试可以在较早的阶段发现性能问题。

3)从来没有做过任何性能测试的系统,需要对该系统做一次性能评估作为后续开发调优的参考。

4.2 并发测试

并发测试可以理解为很多的用户按照预定的场景并发请求某个业务或功能时是否出现并发问题。例如,内存泄露、线程锁、资源争用等,几乎所有的性能测试都会涉及并发测试。并发测试的主要目的是找出并发引起的问题。
并发数确定的方法:

1)并发数=PV/PV Time×页面连接次数×HTTP响应时间×因数/Web服务器数量。其中,PV Time是PV的统计时间,换算成秒,一天是86400s。页面连接次数包括外部的JS、CSS、图片等,一般为10。HTTP响应时间一般可为1s或更少。因数一般为5。

2)著名的经典理论80-20原则。

3)参考段念老师在《软件性能测试过程详解与案例剖析》一书中提到的估算方法。

4.3 负载测试

负载测试可以理解为确定所要测试的业务或系统的负载范围,然后对其进行测试。它的主要目的是验证业务或系统在给定的负载条件下的处理性能。此外,还要关注响应时间、每秒通过事务数和其他相关指标。
从另一个角度理解,负载测试可以看作是性能测试的一部分,但它们两者的目的是不同的,负载测试是为了发现性能问题,而性能测试是为了获取性能指标。因为在性能测试过程中,也可以不调整负载,而是在同样负载情况下通过改变系统的结构、算法、硬件配置等来得到性能指标。

4.4 压力测试

压力测试可以理解为没有预期的性能指标,不断地加压,看系统什么时候崩溃,以此来确定系统的瓶颈或者不能接受的性能拐点,以获得系统的最佳并发数、最大并发数。压力测试也可以看作是负载测试的一种,即高负载下的负载测试。通过压力测试,可以更快地发现内存泄漏问题,还可以更快地发现影响系统稳定性的问题。例如,在正常负载情况下,某些功能可以正常使用或者出错的概率比较低,但在压力测试下可能很快就会出现,帮助我们提早发现性能问题。

4.5 稳定性测试

稳定性测试顾名思义重点在于“稳定”二字,要想知道系统稳定的情况,就需要长时间运行,在这段时间内观察系统的出错几率、性能变化趋势等。进而大大减少系统上线后的崩溃等现象。一般都会进行所谓的7×24小时的稳定性测试。
但稳定性测试也有和其他分类不一样的地方,这里需要强调以下两点。

1)一般稳定性测试需要在系统成型后进行,并且没有严重的Bug存在。

2)场景的设计以模拟真实用户的实际操作为佳。

4.6 失效恢复测试

失效恢复测试重在关注系统出现问题后能否根据预先制定的策略恢复,且恢复后能否正常运行。不过失效恢复测试一般是对具有负载均衡的系统进行的,主要是为了测试当系统局部发生故障时,是否会对全局产生大的影响,产生的影响是否在可以接受的范围内,以及用户能否继续使用系统。

4.7 现网性能测试

所谓现网性能测试,就是在实际网络、实际环境中进行测试,完全和真实用户一样。当然这样的测试有一定的风险,需要注意以下几点。

1)时间段的选择。现网性能测试可能会影响正常用户,所以这样的时间段要尽量避开高峰期,选择半夜或者凌晨来进行。

2)垃圾数据处理。如果现网性能测试涉及了写数据的操作,那么肯定会带来不少的垃圾数据,这些数据后期一定要清理,为了清理方便,前期数据的设计要有规律可循。

3)网络限制。和在内网测试不同,现网的测试如果突然间产生大的数据量,可能会被网络带宽限制,甚至路由会认为是非法数据请求而产生拦截等。所以如果在现网进行性能测试,那么压力机需要和被测服务器部署在同一个网段机房内,这样可以避免网络限制,最后远程收集数据即可。

5.性能测试模型分析

5.1 曲线拐点模型分析

分析思路如下:

1)X轴代表并发用户数,Y轴代表资源利用率、吞吐量、响应时间。X轴与Y轴区域从左往右分别是轻压力区、重压力区、拐点区。

2)然后一个个分析,根据前面学习的性能术语与指标进行理解,随着并发用户数的增加,在轻压力区的响应时间变化不大,比较平缓,进入重压力区后呈现增长的趋势,最后进入拐点区后倾斜率增大,响应时间急剧增加。

3)接着看吞吐量,随着并发用户数的增加,吞吐量增加,进入重压力区后逐步平稳,到达拐点区后急剧下降,说明系统已经达到了处理极限,有点要扛不住的感觉。

4)同理,随着并发用户数的增加,资源利用率逐步上升,最后达到饱和状态。

5)最后,把所有指标融合到一起来分析,随着并发用户数的增加,吞吐量与资源利用率增加,说明系统在积极处理,所以响应时间增加得并不明显,处于比较好的状态。但随着并发用户数的持续增加,压力也在持续加大,吞吐量与资源利用率都达到了饱和,随后吞吐量急剧下降,造成响应时间急剧增长。轻压力区与重压力区的交界点是系统的最佳并发用户数,因为各种资源都利用充分,响应也很快;而重压力区与拐点区的交界点就是系统的最大并发用户数,因为超过这个点,系统性能将会急剧下降甚至崩溃。

5.2 地铁模型分析

6.本章小结

性能测试的作用,重要性及意义

术语,概念,指标

模型分析--曲线拐点模型分析

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值