在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
在软件测试的流程中,其中有一步是进行压力测试。所谓压力测试就是让被测试的系统,在访问的压力下还能不能稳定运行。举个例子,让一万的用户同时访问一个网站,看看网站是否会崩溃或是变慢,这就是在进行压力测试。那么压力测试到底是怎么运行的呢?本文就来详细为大家分析压力测试步骤。
1、压力测试的定义:
软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分。软件压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试。通常要进行软件压力测试的资源包括内部内存、CPU 可用性、磁盘空间和网络带宽。压力测试涵盖,性能测试,负载测试,并发测试等等,这些测试点常常交织耦合在一起。
2、压力测试的步骤:
(1)确定存量数据的规模(用户一般会要求制造出3-5年的存量数据);
(2)确定需要进行压力测试的业务(一般是用户使用最频繁,或者业务操作复杂的业务);
(3)确定操作用户的的数量、各类操作用户的比例;
(4)峰值业务量的要求(一般是1个小时内最多要处理的笔数);
(5)对实时业务响应时间的要求(如在峰值情况下,单笔业务的处理时间(如小于60秒));
(6)对于批量处理过程的时间要求(如进行日终(月终、年终)处理、与外系统间批量数据传输时的时间)。
以上信息,通常需要业务人员来确定。
3、压力测试和性能测试的区别:
压力测试和性能测试的区别在于他们不同的测试目的。
软件压力测试 是为了发现系统能支持的最大负载,他的前提是要求系统性能处在可以接受的范围内,比如经常规定的页面3秒钟内响应;所以一句话概括就是:在性能可以接受的前提下,测试系统可以支持的最大负载。
软件性能测试 是为了检查系统的反映,运行速度等性能指标,他的前提是要求在一定负载下,如检查一个网站在100人同时在线的情况下的性能指标,每个用户是否都还可以正常的完成操作等。概括就是:在不同负载下(负载一定)时,通过一些系统参数(如反应时间等)检查系统的运行情况。比如我们说某个网站的性能差,严格上应该说在N人同时在线情况下,这个站点性能很差)。
总之,就像一个方程式:综合性能=压力数*性能指数,综合性能是固定的:软件压力测试是为了得到性能指数最小时候(可以接受的最小指数)最大的压力数,软件性能测试是为了得到压力数确定下的性能指数。
4、压力测试常见工具:
(1)Apache JMeter
JMeter作为一款广为流传的开源压测产品,最初被设计用于Web应用测试,如今JMeter可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP服务器等等,还能对服务器、网络或对象模拟巨大的负载,通过不同压力类别测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能测试和回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。
(2)阿里云PTS
阿里云性能测试(Performance Testing)是一个SaaS性能测试平台,具有强大的分布式压测能力,可模拟海量用户真实的业务场景,让应用性能问题无所遁形。PTS平台特色包括提供压测机,无需安装软件;脚本场景监控简单化,省时、省力;分布式并发压测,施压能力无上限;快速大规模集群扩容、支持几十万用户及百万级TPS性能压测;80%以上用户基本不需要花费额外的成本。
以上就是压力测试的步骤分析。总之,压力测试作为软件测试流程中必不可少的重要环节,发挥着巨大的检测作用,能够有效检查出系统存在的实际问题。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
软件测试培训多少钱?
软件测试培训多少钱?软件测试发展前景怎么样?软件测试就业薪资是多少?作为刚入行的初学者,这些问题一直困扰着大家。据网络数据显示,软件测试人员人才缺口高达30万左右,而且工作超过3年的资深测试人员不足5万。因此现在开始入行软件测试无疑是一个具有挑战的机遇。
6707
2019-08-08 11:56:51
软件测试过程的步骤分析
软件测试过程可以分为5个步骤,即单元测试、集成测试、确认测试、系统测试、验收测试。本文将详细分析这5个步骤的主要内容和意义,和大家谈谈各个步骤的具体操作流程。
6747
2019-08-19 11:46:24
软件测试是做什么的?
软件测试顾名思义就是对软件产品进行测试,从而发现其中的问题。然而在实际岗位中软件测试的具体工作不仅仅是找问题那么简单。那软件测试到底是做什么的呢?
7654
2019-10-23 18:58:56
什么是版本控制?常用的版本控制系统有哪些?
版本控制是一种软体工程技巧,籍以在开发的过程中确保由不同人所编辑的同一档案都得到更新。Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为帮助管理 Linux 内核开发而开发的一个开放源 码的版本控制软件。
7065
2020-04-01 15:41:26
白盒测试和黑盒测试的区别
白盒测试和黑盒测试的区别白盒测试和黑盒测试都是计算机领域行业用以检查程序的状态,确定实际运行状态与预期状态是否一致。白盒测试技术深入到代码一级的测试,使用这种技术发现问题最早,效果最好。黑盒测试技术覆盖全部的功能,结合兼容,性能测试等方面进行,根据软件需求,设计文档,模拟客户场景随系统进行实际的测试。
5411
2020-06-01 15:32:12