一、性能测试
性能:
1.性能是一种表明软件系统或构件对于及时性要求的符合程度的指标。
2.性能是软件产品的一种特性,可以用时间来度量。性能的及时性通常用系统对请求做出相应所需要的时间来衡量。
性能测试:
1.检验软件是否达到需求规格说明书中规定的各类性能指标,并满足一些性能相关的约束和限制条件。
2.性能测试的目的是确认软件是否满足产品的性能需求,同时发现系统中存在的性能瓶颈,并对系统进行优化。
性能测试包括以下几个方面:
1.评估系统的能力;2.识别系统中的弱点;3.系统调优;
性能测试方法:
1.基准法;2.性能下降曲线分析法等;
基准法的基准大体有以下几方面:
1.响应时间:从应用系统发出请求开始,到客户端接收到最后一个字节数据为止所消耗的时间。
2.并发用户:一般是指同一时间段内访问系统的用户数量。(在线和访问是不一样的)
3.吞吐量:指单位时间内系统处理的客户请求数量。(页面数/秒,事务数/分)可以直接体现软件系统的性能。
4.性能计数器:是描述服务器或操作系统性能的一些数据指标。发挥着监控和分析关键作用。(比如Windows系统任务管理器)
性能测试执行:
1.计划阶段;2.测试阶段;3.分析阶段;
二、压力测试
压力测试:
1.压力测试是指模拟巨大的工作负荷,以查看系统在峰值使用情况下是否可以正常运行。
2.压力测试是通过逐步增加系统负载来测试系统性能的变化,并确定在什么负载条件下系统性能处于失效状态,以此来获得系统性能提供的最大服务级别的测试。
压力测试特点:
1.压力测试是检查系统处于压力情况下的能力表现。通过不断增加系统压力,来检测系统在不同压力情况下所能到达的工作能力和水平。
2.压力测试一般通过模拟方法进行。通常在系统内对内存和CPU利用率上进行模拟,以获得测量结果。
3.压力测试一般用于测试系统的稳定性。通常会考察系统在压力下是否会出现错误等方面的问题。
压力测试和性能测试的联系和区别:
1.压力测试用来保证产品发布后系统能否满足用户需求,关注的是系统整体;性能测试可发生在各个测评阶段,一个单独模块的性能也可以进行评估。
2.压力测试是极端情况下的系统能力的表现;性能测试是正常能力的表现;
压力测试方法:
1.重复压力测试:一遍又一遍地执行某个操作或功能。能否持续不断地在每次执行都正常。
2.并发压力测试:同一时间执行多个测试线程。
3.量级增加压力测试:可以重复执行一个操作,但是操作自身也要给产品增加负担。
4.随机压力测试:对上述手段随机组合,以便获得最佳的测试效果。
压力测试执行(压力测试用力的选取考虑以下几个方面):
检查是否有足够的磁盘空间;检查是否有足够的内存空间;创造极端的网络负载;制造系统溢出条件。