
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
性能测试是软件测试程序员在测试软件的时候会经常用到的一种测试方法,而本文我们就通过案例分析来简单了解一下,软件性能测试基础知识分享。
开始性能测试前需要了解的内容:
1、项目具体需求。
2、指标:响应时间在多少以内,并发数多少,tps多少,总tps多少,稳定性交易总量多少,事务成功率,交易波动范围,稳定运行时长,资源利用率,测哪些交易,哪些接口,测试哪些场景。3、环境:生产环境服务器数量,测试环境服务器数量,按照资源配比得出测试指标。
4、协议:系统用什么协议进行通讯。
5、压力机数量:如果并发用户数太多,需要把压力发到不同的压力机,不然可能会存在压力机瓶颈问题,导致tps和响应时间抖动。
6、交易占比:分析线上日志得出tps占比。
7、系统架构:请求流经过哪些环节,压测时监控这些环节。
测试:
1、基准:一个用户迭代100次,关注响应时间,事务成功率。
2、负载:10个用户跑10分钟,关注响应时间,事务成功率。
3、容量:估算一个总tps,根据公式计算出每个交易的pacing和vu,获取系统大处理能力(优容量),再令外测出三个梯度作为对比(两组小于优容量,一组大于优容量),四组容量VU等差,tps等差,对比每组容量实际占比和测试占比(越接近越能模拟真实场景),关注响应时间,总tps,tps,事务成功率,APcpu利用率,DBcpu利用率,线程死锁,数据库死锁。其中响应时间应小于负载测试时间,总tps应约等于预估总tps(相差不超过10是正常的),每个交易的tps应接近预估总tps*占比,事务成功率,APcpu小于60%,DBcpu小于80%。dump线程栈检测是否有线程死锁,查看数据库日志看是否有数据库死锁。
4、稳定性:采取优容量的80%作为压力持续运行24小时,观察系统长时间运行的性能表现,关注响应时间,tps,总tps,事务成功率,交易总数,观察是否有内存溢出(堆溢出,栈溢出,持久代溢出),cpu利用率是否达标,mem是否不持续增长,是否能正常触发fullgc,gc时间,gc频率,fullgc时间,fullgc频率(重点关注,JVM调优就是为了减少fullgc频率)。
监控:
容量测试和稳定性测试时启动nmon监控。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。