根据性能测试的概念界定,性能测试包括如下方法:
♦.验收性能测试方法
♦.负载测试
♦.压力测试
♦.配置测试
♦.并发测试
♦.可靠性测试
♦.失败恢复测试
验收测试
通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能要求,其具有以下特点:
1>.验证系统是否具有系统宣称具有的能力。
2>.需要事先了解被测系统的典型场景,并具有确定的性能目标。
3>.要求在已确定的环境下运行。
负载测试
在被测系统上不断增加压力,直到性能指标(如响应时间)超过预定指标或者某种资源使用已经达到饱和状态,以找到系统处理极限.其具有以下特点:
1>.找到系统处理能力的极限
2>.需要在给定的测试的环境下进行
3>.主要用来了解系统性能容量,或是配合性能调优来使用
压力测试
测试系统在一定饱和状态下,例如CPU、内存等在饱和使用情况下,系统能够处理的会话能力,以及系统是否会出现错误。其具有如下特点:
1>.主要用于检查系统处于压力情况下时应用的性能表现
2>.一般通过模拟负载等方法,使得系统的资源达到较高的水平
3>.一般用于测试系统的稳定性
配置测试
通过对被测系统软硬件环境的调整,了解各种不同环境对系统性能影响程度,从而找到系统各项资源的最优分配原则。其具有如下特点:
1>.了解各种不同因素对系统性能影响的程度,从而判断出最值得进行的调优操作
2>.一般在对系统性能状况有初步了解后进行
3>.一般用于性能调优和规划能力
并发测试
通过模拟用户的并发访问,测试多用户并发访问,测试多用户并发访问同一个应用、同一个模块或者数据记录时是否存在死锁或者其他性能问题。其具有如下特点:
1>.发现系统中可能隐藏的并发访问时的问题
2>.主要关注系统可能存在的并发问题,例如系统中的内存泄露、线程锁和资源争用方面的问题
3>.可以在开发的各个阶段使用,需要相关的测试工具的配合和支持
可靠性测试
通过给系统加载一定的业务压力(例如资源在70%~90%的使用率),让应用持续运行一段时间,测试系统在这种条件下能否稳定运行。其具有如下特点:
1>.验证系统是否支持长期稳定的运行
2>.需要在压力下持续一段时间的运行
3>.需要关注系统的运行状况
失效恢复测试
用来检验如果系统局部发生故障,用户是否能够继续使用系统,以及如果这种情况发生,用户将受到多大程度的影响。其具有如下特点:
1>.验证在局部故障情况下,系统能否继续使用
2>.当问题发生时"能支持多少用户访问"的结论和"采取何种应急措施"的方案
3>.一般来说,只有对系统持续运行指标有明确要求的系统才需要进行这种类型的测试