性能测试学习一

功能考虑的是软件“能做什么”的问题,性能关注的问题是软件所完成的工作“做得如何”的问题。软件性能的实现建立在功能实现的基础上,只有“能做”才能考虑“做得如何”。功能测试主要针对于软件功能开展检测,常常会依据需求规格说明书开展测试;性能测试主要针对于系统性能进行检测,通常依据性能方面的一些需求或者指标进行测试。性能测试通过“手工”和“自动化”两种测试手段实现。自动化测试节省大量的硬件资源和人力资源。
性能测试的定义与要点:性能测试是通过自动化的工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试
三个含义:1)通常性能测试需要借助工具实现
2)性能测试除了关注普通的正常情况外(如单用户短时间操作),还关注空间和时间上的很多峰值或异常的系统运行情况,如多用户并发操作、大数据量积累、超负载运行、系统长期持续使用情况,这些情况下更容易暴露系统的性能问题
3)性能测试借助所监控和收集的各项指标来分析系统的性能
性能测试工作的重点和难点在于前期数据设计和后期数据分析,测试工具不能代替我们做所有的测试工作。前期的用例设计、场景分析需要花大量功夫去研究。当工具收集测试数据之后,最重要的工作就是对数据进行分析。
性能测试的分类
1.性能测试
2.一般性能测试:会在进行负载测试、压力测试等之前进行,作为性能基准测试。主要是验证软件在正常环境和系统条件下,即不施加任何压力情况下重复使用系统验证其是否能满足性能指标,如响应时间、系统资源占有情况等。
3.负载测试:主要是在“基于或模拟系统真实运行环境及用户真实业务使用场景”情况下,通过不断给系统增加压力或在一定压力下延长系统运行时间,来验证系统各项性能指标的变化情况,直到系统性能到达预先约定的极限值。
4.压力测试:主要是在“模拟系统已处于极限负载下或某指标已经处于饱和状态”情况下,继续给系统增大负载或运行时间,观察系统性能表现,验证系统是否出现内存泄漏等严重情况。有助于进行系统稳定性的验证以及性能瓶颈的确定
5.大数据量测试:使用大批量数据对系统产生压力或影响,同时验证系统各项指标运行是否正常。有助于进行系统可扩展性的验证及性能瓶颈的确定。
6.配置测试:在不同软硬件配置环境下,进行测试来找到系统各项资源的最优分配原则的一种测试
7.稳定性测试:连续运行被测系统,检查系统运行时的稳定程度。通常采用MTBF(错误发生的平均时间间隔)来衡量系统的稳定性,MTBF越大,系统的稳定性越强。可以找到死机、内存泄漏或系统崩溃等问题。
8.性能测试还包括并发测试、容量测试、可靠性测试等。
性能测试流程
1.明确需求,确定性能测试目标
2.在需求确定的基础上进一步细化,进行业务建模,设计测试用例及场景
3.搭建性能测试环境及创建所需的测试数据
4.借助性能测试工具进行测试实施,通知进行资源监控及数据收集
5.针对监控和收集到的大量数据、图表,进行分析。
6.程序员及DBA等其他人员协作共同完成性能问题解决及性能调优
7.回归测试,将测试结果和前阶段测试结果进行对比分析

测试用例与场景设计思路:1)确定系统中主要产生压力的功能模块或用户角色
2)确定系统中主要产生压力的功能
3)针对产生压力的功能,确定详细操作步骤及步骤需要重复的次数
4)针对并发用户的操作进行设计(如不同姓名的用户)
5)确定并发户数量、用户增加/减少方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值