
知友好,对于性能测试的学习,也是测试人员必经的一个道路,那么也说说见解吧,给知友做一个简单的参考。
首先,不同角色关注的性能的方向是不一样的。
用户视角:
1.响应时间
管理员的视角:
1.响应时间
2.系统状态相关的信息
开发的视角:
1.响应时间
2.扩展性
3.性能瓶颈
针对不同的关注点,性能测试的方法也是有很多方式供咱们选择。
1.性能测试 Perfomance Testing
通过模拟生产环境的业务压力和使用场景组合,测试系统的性能是否满足实际的性能的需求
主要目的验证系统是否有系统宣称具有的能力
需要事先了解被测试系统典型场景,并具有确定的性能目标
2.负载测试 Load Testing
在一定负载程度下进行最大负载的过程
主要目的是找到系统处理能力的极限
需要在给定的测试环境下进行,通过逐步施加压力的方式找到系统性能的最大瓶颈
用来了解系统的性能容量,或是配合性能调优来使用
3.压力测试 Stress Testing
通过确定一个系统的瓶颈或者不能接受性能点,来获得系统能提供的最大服务级别的测试
主要目的是为了检查系统处于压力情况下时,应用的表现
主要通过模拟负载等方法,使得系统的资源使用达到较高水平(80%-90%)
一般用于测试系统的稳定性
4.配置测试 Configuration Testing
对被测试系统的软/硬件环境的调整,了解各种不同的环境对系统性能的影响的程度,从而找到系统各项资源的最优配置
主要目的是为了了解各种不同因素对系统性能的影响的程度,从而判断出最值得进行调优操作
一般在对系统性能状况有初步了解后进行
一般用于性能调优或规划能力
5.并发测试 ConCurrency Testing
通过模拟用户的并发访问,测试多用户并发访问同一个模块或子系统时是否存在死锁或者其他性能问题
主要目的是发现系统中可能隐藏的并发访问时的问题
主要关注系统可能存在的并发问题
6.可靠性测试 Reliability Testing
通过给系统加载一定的业务压力的(如资源在60%-80%的使用率)的情况下,让应用持续运行一段时间,测试系统在这种条件下是否能够稳定运行
主要目的是验证系统是否运行长期稳定的运行
需要在压力下持续一段时间运行
试过程中需要关注系统的运行状况
7.失效恢复测试 Failover Testing
针对有冗余备份和负载均衡的系统设计的。这种测试方法可以用来检验如果系统局部发生故障,用户是否能够继续使用系统;以及如果这种情况发生,用户将受到多大程度的影响
主要目是是验证在局部故障的情况下,系统能否继续使用。
当问题发生时能支持多少用户访问和采取何种应急措施。
只有对系统持续运行指标有明确要求的系统才需要进行这种类型的测试
想要做好性能测试,可以记住以下几点:
1.规范的管理流程
1.1开发阶段的性能测试
1.2用户现场的性能测试
1.2.1需求分析—规划与设计—执行—调优—验证
2. 提高测试人员在性能测试方面的技能,比如说行业业务知识等。
如果知友对这部分内容感兴趣,可以持续关注小编的账号,除此之外,小编还录制了不少这方面的技术视频,知友如果有需要,可以私聊本小编获取哦!
