亲爱的童鞋们大家好,我是python自动化测试班的学员小晨,在这个班已经学习了半年多的时间了,收货很多,学习到的内容对我工作上也有很大的帮助。特别开心被评选上了优秀学员,最近除了在学习自动化测试,对性能测试也有点研究,在这里分享一下:
1.性能测试一般关注的重要指标:事务、TPS(每秒通过事务数)、响应时间(网络响应时间+应用程序响应时间)、资源利用率(cpu、mem)、吞吐量(单位时间内网络上传输的数据量,=吞吐率
单位时间)响应时间中的应用程序响应时间包括web server与database server的响应时间2.性能测试曲线
随着并发用户数增加,资源占有率和吞吐量逐渐增加,响应时间变化不大随着并发数增长到一定程度后,资源占有率和吞吐量停止增长,响应时间进一步延长如果并发数还一直不断增长,资源占有率和吞吐量开始下降,响应时间明显增长light load和heavy load交接区是最佳用户数,heavy load和buckle zone交接区是最大用户数当系统的负载等于最佳用户数,系统整体运行效率高,资源没有浪费,用户不需要等待当系统的负载处于最佳用户数与最大用户数之间,系统仍可以正常工作,但是响应时间开始变长,满意度开始下降当系统的负载大于最大用户数,会导致响应时间过长,某些用户无法忍受而离开3.性能测试流程从业务提取性能测试需求->编写测试计划,评审->开发测试脚本,准备测试环境,准备测试数据->执行测试,分析测试结果->对缺陷进行管理,对系统进行调优->编写测试报告4.如何提取性能测试需求点(1)业务量高的,经常使用的(2)有风险的(3)未来有增长趋势的(4)资源占用非常严重的(5)关键接口5.性能测试指标--并发用户数预估如果没有监控系统,算法8020原则(80%的业务都在20%的时间发送的,80%的软件缺陷常常生存在软件20%的空间里)。如果有监控系统,需交易数的峰谷,取5分钟来算。例子:用户数 10万业务操作 浏览类型 40% 其他业务60%按照28原则,其中时间为8小时的20%浏览类型业务:(10万40%
80%)/(83600
20%)=5.56其他类型业务:(10万60%
80%)/(83600*20%)=8.33