1、压力测试的定义:
软件压力测试是一种基本的质量行为,它是每个重要软件测试工作的一部分。软件压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试。通常要进行软件压力测试的资源包括内部内存、CPU可用性、磁盘空间和网络带宽。压力测试涵盖,性能测试,负载测试,并发测试等等,这些测试点常常交织耦合在一起。
2、压力测试的步骤:
(1)确定存量数据的规模(用户一般会要求制造出3-5年的存量数据);
(2)确定需要进行压力测试的业务(一般是用户使用频繁,或者业务操作复杂的业务);
(3)确定操作用户的数量、各类操作用户的比例;
(4)峰值业务量的要求(一般是1个小时内非常多要处理的笔数);
(5)对实时业务响应时间的要求(如在峰值情况下,单笔业务的处理时间(如小于60秒));
(6)对于批量处理过程的时间要求(如进行日终(月终、年终)处理、与外系统间批量数据传输时的时间)。
以上信息,通常需要业务人员来确定。
3、压力测试和性能测试的区别:
压力测试和性能测试的区别在于他们不同的测试目的。
压力测试是为了发现系统能支持的大负载,他的前提是要求系统性能处在可以接受的范围内,比如经常规定的页面3秒钟内响应;所以一句话概括就是:在性能可以接受的前提下,测试系统可以支持的大负载。
性能测试是为了检查系统的反应,运行速度等性能指标,他的前提是要求在一定负载下,如检查一个网站在100人同时在线的情况下的性能指标,每个用户是否都还可以正常的完成操作等。概括就是:在不同负载下(负载一定)时,通过一些系统参数(如反应时间等)检查系统的运行情况。比如我们说某个网站的性能差,严格上应该说在N人同时在线情况下,这个站点性能很差)。
总之,就像一个方程式:综合性能=压力数*性能指数,综合性能是固定的:软件压力测试是为了得到性能指数小时候(可以接受的小指数)大的压力数,软件性能测试是为了得到压力数确定下的性能指数。
4、压力测试常见工具:
(1)ApacheJMeter
JMeter作为一款广为流传的开源压测产品,被设计用于Web应用测试,如今JMeter可以用于测试静态和动态资源,例如静态文件、Java小服务程序、CGI脚本、Java对象、数据库、FTP服务器等等,还能对服务器、网络或对象模拟巨大的负载,通过不同压力类别测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能测试和回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了更大限度的灵活性,JMeter允许使用正则表达式创建断言。
(2)阿里云PTS
阿里云性能测试(PerformanceTesting)是一个SaaS性能测试平台,具有强大的分布式压测能力,可模拟海量用户真实的业务场景,让应用性能问题无所遁形。PTS平台特色包括提供压测机,无需安装软件;脚本场景监控简单化,省时、省力;分布式并发压测,施压能力无上限;快速大规模集群扩容、支持几十万用户及百万级TPS性能压测;80%以上用户基本不需要花费额外的成本。
看完上面的内容是不是收获满满呢?以上就是本篇文章的全部内容,如有疑问欢迎前来咨询了解。
软件压力测试该怎么操作
发布时间:2022-06-22 16:16:53 已帮助:2人 来源:北京乐搏软件测试培训学校
上一篇:软件测试中的黑盒测试方法
下一篇:软件测试人员要掌握的技能