懒羊羊softwaretesting

导航

性能测试关注点

开始性能测试前需要了解的内容:

1、  项目具体需求是什么,为什么要做性能测试?哪些交易需要做性能测试?哪些场景需要做性能测试?

2、  指标:响应时间在多少秒以内,支持多少并发数,每支交易的tps是多少,总tps多少,稳定性交易总量要达到多少,事务成功率要达到多少,交易波动范围是多少,稳定运行时长是多久,资源利用率不能超过多少等。

3、  环境:生产环境服务器数量有多少,测试环境服务器数量有多少,按照资源比例计算出测试指标。

4、  协议:系统用什么协议进行通讯。

5、  压力机数量:如果并发用户数过多,需要把压力发到不同的压力机,不然可能会存在压力机瓶颈问题,导致tps和响应时间抖动问题。

6、  交易占比:分析线上日志得出每支交易的使用占比是多少。

7、  系统架构:请求流经过哪些环节,压测时监控这些环节。

 

测试步骤:

1、基准测试:单个交易单个用户迭代100次,关注响应时间是否在指标范围内,事务成功率要为100%。

2、负载测试:1单个交易10个用户持续跑10分钟,关注响应时间是否在指标范围内,交易是否支持并发,事务成功率要为100%。

3、容量测试:先估算一个总tps,根据配比公式计算出每个交易的pacing和vu,获取系统最大处理能力(最优容量),再令外测出三个梯度作为对比(两组小于最优容量,一组大于最优容量),四组容量VU等差,tps等差,对比每组容量实际占比和测试占比(越接近越能模拟真实场景),关注响应时间是否在指标范围内,总tps和每支交易的tps能否满足指标,事务成功率要为100%,应用服务器cpu利用率和数据库服务器cpu利用率是否在指标范围内,是否存在线程死锁和数据库死锁情况。

其中响应时间应小于负载测试时间(因为负载测试并发用户数多,资源往往是超过指标的),总tps应约等于预估总tps(相差不超过10是正常的),每个交易的tps应接近预估总tps*占比。

4、稳定性:采取最优容量的80%或者最优容量作为压力持续运行24小时,观察系统长时间运行的性能表现,关注响应时间、tps、总tps、事务成功率、交易总数等是否满足指标,观察是否有内存溢出(堆溢出,栈溢出,持久代溢出),cpu利用率是否达标,mem是否不持续增长,是否能正常触发fullgc,要关注gc时间、gc频率、 fullgc时间、fullgc频率。

监控:

容量测试和稳定性测试时启动nmon监控。

 

posted on 2018-03-16 22:31  懒羊羊呐  阅读(222)  评论(0编辑  收藏  举报