随着科技的飞速发展,软件产品广泛应用于各个行业领域,人们对计算机和网络的依赖性越来越大,对新奇事物也越来越感兴趣,成千上万的用户活跃在庞大的网络系统中,这给提供服务的系统带来严重的负荷,"高并发"、"数据集中"便是系统网络发展中最明显的特征。
时过境迁,IT服务系统的性能测试与优化越来越重要,性能测试已经不再是一个可有可无的工作,越来越多的企业在产品测试的过程中都将性能测试列为工作内容的重要环节。
一、工作中的性能测试难题
如果你恰好刚刚进入一家新公司,做了一段时间的功能测试,你觉得没问题可以胜任,信心十足。可好景不长,突然领导让你开展性能测试,作为想保住工作的测试员你无法拒绝,但作为初出茅庐的测试新人,你除了手足无措,只能默默慨叹自己能力尚欠,眼前只会出现一个又一个无从下手的难题:
1、项目需求缺乏的情况下,如何开展性能测试需求分析工作?
2、系统没有相关的历史数据,也不明了未来上线后的用户情况,如何设计并发用户数和业务数据量呢?
3、不是每一个功能或是每一组业务都要进行性能测试,如何进行性能测试必要性分析呢?如何分析并确认性能测试范围?
4、性能测试指标有那么多,比功能测试的预期结果需要考虑的内容要多很多,如何进行性能测试指标的定义?如何选择合理的性能测试指标?
5、负载压测执行后,如何判断是否存在性能故障?
6、如果出现了性能故障,如何进行调优?如何确定调优结果?
听听15年资深测试工程师分享的性能测试经验及必备干货,或许能帮助你解决很多工作中的迷惑。
二、功能测试如何转性能测试?
提问者:小北
面临状况:做了大半年的功能测试,日常工作也就测测软件界面和软件逻辑,时间久了觉得枯燥无味,薪资不高是硬伤,想转性能测试方向,但感觉需要学习的东西太多了,无从下手,很是苦恼,求大神指点迷津。
大佬即时贴:有这种想转的思想很好。相信有很多和你同样情况的同学,同时,半年的经验一下子转过来是不可能的。
首先,你已经做了大半年功能测试了,相信已经具备了自己搭建测试环境的能力,对整个系统也有很深的理解了。这个过程是每个测试员必须经历的,可以提高自己的学习能力,也可以为日后的进阶打下坚实的基础。建议多跟测试项目,加深学习和理解被测项目用了哪些技能。
其次,学习一款性能测试工具。我本人不建议上来就学那些操作系统、数据库等知识。毕竟先从工具入手是最快最合适的,至于会不会分析,那是知识的累积程度和思维方式的问题,是后面的问题,如果真想转,先学一款工具,把工具玩熟。且在功能测试中,如果有性能需求,多多参与。
性能能测试拼的是对整个计算机体系的理解,而不仅仅是工具。但我们必须先掌握工具,以此为切点快速的入门。
三、做性能测试,该掌握什么?
性能测试工作阶段流程
1、性能测试需求分析(准备阶段)
明确性能测试范围、定义性能测试指标
2、性能测试计划
确定测试领域、分析用户场景、确定性能目标、性能测试工作安排、制定实施时间、性能测试风险预防
3、性能测试设计(时间比重大)
测试环境设计、测试场景设计、测试用例设计、脚本和辅助工具的开发及使用
4、性能测试实施
构建性能测试场景、执行测试脚本、测试结果记录
5、性能测试故障定位
6、性能测试调优
性能测试执行过程中的各种坑
1、性能测试环境监控问题
2、缓存处理优化问题
3、Linux下MySQL跟踪
4、通过git获取优化后代码
5、验证码校验问题
6、批量数据构造+存储过程
7、MySQL占用CPU过高
8、最多可以支持多少并发
9、不通过上游流程,如何直接加压
10、性能测试用例设计
11、批量数据构造+自动化技术
12、复杂性能测试设置
13、如何评估当前系统性能状况
14、架构对数据库性能的影响
15、多个业务性能测试
16、集合点对性能的影响
17、批量数据构造+SQL命令
18、调优前后性能指标对比
性能测试执行工作全面演绎
1、部署性能测试环境:
LNMP:Linux+Nginx+MySQL+PHP
2、性能测试执行:
Fiddler+Jmeter+PhpMyAdmin+Linux(xshell)+NMON
3、性能测试故障定位:
缓存问题、数据初始化问题、设计架构问题
4、性能测试调优:
缓存调优、数据库调优、代码调优
关于功能测试的文章,网络上可以查找到很多,但是关于性能测试,专业系统的文章却寥寥无几,很少有文章介绍如何优化系统的性能。
当然,性能测试只是软件测试工作中的一部分,想从初级的功能测试到最高端的测试开发,还有很多技能是需要去掌握的,同样也是有很多窍门的!
今天的分享就到此结束了, 如果文章对你有帮助,记得点赞,收藏,加关注。会不定期分享一些干货哦......
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……如果你不想再体验一次自学时找不到资料,没人解答问题,坚持几天便放弃的感受的话,可以加入下方我们的测试交流群大家一起讨论交流学习。