软件测试中的压力测试是什么?
压力测试压力测试是一种软件测试,用于验证软件应用程序的稳定性和可靠性。压力测试的目标是在极其极重的负载条件下测量软件的健壮性和错误处理能力,并确保软件在危急环境下不会崩溃。它以致可以测试超出正常工作点的测试,并评估软件在极端条件下的工作环境。
在软件工程中,压力测试也被称为耐力测试。在压力测试中,对AUT进行短时间的压力测试,以了解其承受能力。压力测试最突出的用途是确定系统或软件或硬件崩溃的极限。它还检查系统是否在极端条件下表现出有效的错误管理。
从网站复制5GB数据并粘贴到记事本中,会对正在测试的应用程序施加压力。记事本处于压力下,并给出“未响应”错误消息。
必要压力测试的场景
考虑下面的实时例子,我们可以发现压力测试的用法
[*]在节日期间,在线购物网站大概会迎来流量高峰,大概公布打折。
[*]当一个博客在一家主要报纸上被提及时,它的流量就会突然激增。
必须进行压力测试以适应这种异常的流量峰值。未能适应这种突然的流量大概会导致收入和声誉的丧失。
压力测试也非常有价值,缘故原由如下:
[*]检查系统是否处于异常状态。
[*]当系统处于压力下时表现得当的错误消息。
[*]系统在极端条件下的故障大概导致巨大的收入丧失
[*]最好通过执行压力测试来为极端条件做好准备。
压力测试的目标
压力测试的目标是分析系统发生故障后的行为。为了使压力测试乐成,系统在极端条件下应该表现得当的错误消息。
为了进行压力测试,偶然大概会使用大量的数据集,这些数据集大概在压力测试过程中丢失。测试职员在进行压力测试时不应该丢失这些与安全性干系的数据。
压力测试的主要目的是确保系统在故障后能够恢复,这称为可恢复性。
负载测试Vs压力测试
负载测试
压力测试
负载测试是测试系统在正常工作负载条件下的行为,它只是用实际工作负载进行测试或模拟。
压力测试是测试系统在极端条件下的行为,不停进行到系统故障为止。
负载测试不会破坏系统
压力测试试图通过测试压倒性的数据或资源来破坏系统。
压力测试的类型
以下是压力测试的类型,表明如下:
分布式压力测试:
在分布式客户端-服务器系统中,测试是从服务器跨全部客户机完成的。压力服务器的作用是向全部压力客户端分发一组压力测试,并跟踪客户端的状态。客户端与服务器联系后,服务器添加客户端名称,并开始发送数据进行测试。
同时,客户端机器发送与服务器连接的信号或心跳。假如服务器没有从客户端机器接收到任何信号,则必要进一步研究以进行调试。从图中可以看出,一个服务器可以连接2个客户端(Client1和Client2),但它不能从客户端3和4发送或接收信号。
夜间运行是运行这些压力测试场景的最佳选择。大型服务器群必要一种更有效的方法来确定哪些盘算机发生了必要调查的压力故障。
应用程序压力测试
此测试集中于发现与应用程序中的数据锁定和壅闭、网络问题和性能瓶颈干系的缺陷。
事务性压力测试
它对两个或多个应用程序之间的一个或多个事务进行压力测试。用于系统的微调和优化。
系统压力测试
这是集成的压力测试,可以跨运行在同一服务器上的多个系统进行测试。它用于发现一个应用程序数据壅闭另一个应用程序的缺陷。
探索性压力测试
这是压力测试的一种类型,用于测试具有不寻常参数或在真实场景中不太大概发生的条件的系统。它用于在意想不到的场景中发现缺陷,例如
[*]大量用户同时登录
[*]假如病毒扫描程序在全部盘算机中同时启动
[*]假如从网站访问数据库时,数据库已离线,
[*]当大量数据同时被插入数据库时
怎样进行压力测试?
压力测试过程可分为5个主要步调:
步调1)计划压力测试:在这里您网络系统数据,分析系统,定义压力测试目标
步调2)创建主动化脚本:在这个阶段,您创建压力测试主动化脚本,为压力场景生成测试数据。
步调3)脚本执行:在这个阶段,您运行压力测试主动化脚本并存储压力结果。
步调4)结果分析:在此阶段,您将分析压力测试结果并辨认瓶颈。
步调5)调解和优化:在这个阶段,你微调系统,改变配置,优化代码以到达预期的基准。
最后,再次运行整个周期,以确定调解是否产生了所需的结果。例如,为了实现性能目标,必须进行3到4个压力测试周期是很正常的
压力测试保举的工具
LoadRunner
来自HP的LoadRunner是一个广泛使用的负载测试工具。由Loadrunner形成的负载测试结果被视为基准。
Jmeter
Jmeter是一个开源的测试工具。它是一个用于压力和性能测试的纯Java应用程序。Jmeter旨在涵盖负载、功能、压力等类型的测试。它必要JDK 5或更高版本才能运行。
Stress Tester
该工具提供了对web应用程序性能的广泛分析,以图形格式提供结果,并且非常易于使用。不必要高级脚本,并提供精良的投资回报。
Neo load
这是市场上用于测试web和移动应用程序的流行工具。该工具可以模拟数千个用户,以评估负载下的应用程序性能并分析响应时间。它还支持云集成的性能、负载和压力测试。它易于使用,具有成本效益,并提供精良的可伸缩性。
压力测试的度量
度量有助于评估系统的性能,通常在压力测试结束时进行研究。常用的度量尺度是-
测量可伸缩性和性能
[*]每秒页面数:衡量每秒请求的页面数
[*]吞吐量:基本度量-响应数据大小/秒
[*]轮数:计划测试场景的次数与客户端执行的次数之比
应用程序响应
[*]检索时间:检索图像或页面的均匀时间
[*]第一个字节的时间:返回数据或信息的第一个字节所花费的时间
[*]Page Time:检索页面中全部信息所花费的时间
失败
[*]失败连接数:客户端拒绝的失败连接数(弱信号)
[*]失败回合数:失败回合数
[*]失败点击:系统失败实验的次数(断开的链接或看不到的图像)
结论
压力测试的目的是在极端条件下检查系统。它监督系统资源,如内存、处理器、网络等,并检查系统恢复到正常状态的能力。它检查系统在压力下是否表现得当的错误消息。
压力测试的例子
[*]电子商务网站公布节日促销
[*]新闻网站在一些重大变乱的时候
[*]教育委员会的结果网站
[*]交际网站或博客、应用程序等
最后: 下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们假如必要可以自行免费领取【保证100%免费】
https://i-blog.csdnimg.cn/blog_migrate/a82163bdf67ba5294726fcf76b513708.png 这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也伴随上万个测试工程师们走过最艰难的路程,盼望也能资助到你!
https://i-blog.csdnimg.cn/blog_migrate/7b905b2eec22bfca3772d750587af2b7.gif
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]