【性能测试入门】:压力测试概念!

压力测试可以验证软件应用程序的稳定性和可靠性。压力测试的目标是评估软件在极端负载条件下的鲁棒性和错误处理能力,并确保软件在紧急情况下不会崩溃。它甚至可以进行超出软件正常工作条件的测试,并评估软件在极端条件下的工作方式。


在软件工程中,压力测试也称为耐力测试。在压力测试下,将在短时间内对AUT施加压力以检验其承受能力。压力测试最主要的用途是确定系统、软件或硬件损坏的极限。它还检查系统在极端条件下是否显示出有效的错误处理能力。例如,从网站复制5GB数据并将其粘贴在记事本中,记事本承受压力,并显示“未响应”错误消息。

在本教程中,你将学习-

  • 什么是压力测试?
  • 压力测试的目标
  • 负载测试与压力测试
  • 压力测试的类型
  • 如何进行压力测试?
  • 推荐用于压力测试的工具
  • 压力测试指标

压力测试必要性


请考虑以下情形-

  • 在节日期间,在线购物网站可能会出现访问量激增的情况。
  • 在一家主要报纸上提到博客时,它的访问量突然激增。

必须进行压力测试以适应这种异常的流量高峰。无法适应这种突然的流量可能会导致网站收入和声誉受损。
由于以下原因,压力测试也非常有价值:

  • 检查系统是否在异常情况下工作。
  • 当系统处于压力状态时显示适当的错误消息。
  • 极端条件下的系统故障可能会导致巨大的收入损失
  • 最好通过执行压力测试为极端条件做好准备。

压力测试的目标


压力测试的目的是分析故障后系统的行为。为了使压力测试成功,在极端条件下,系统应显示适当的错误消息。
为了进行压力测试,有时会使用海量数据集,这些数据集在压力测试过程中可能会丢失。测试人员在进行压力测试时不应丢失与安全相关的数据。
压力测试的主要目的是确保系统在发生故障后恢复,这称为可恢复性。
负载测试与压力测试

负载测试压力测试
负载测试用于测试正常工作负载条件下的系统行为,而仅仅是测试或模拟实际工作负载压力测试是在极端条件下测试系统行为,并进行到系统故障为止。
负载测试不会破坏系统压力测试试图通过对大量数据或资源进行测试来破坏系统。
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】

压力测试的类型

以下是压力测试的类型,并解释如下:
1. 分布式压力测试


在分布式客户端-服务器系统中,测试是在服务器上所有客户端之间进行的。压力服务器的作用是向所有压力客户端分发一组压力测试,并跟踪客户端的状态。客户端与服务器联系后,服务器将添加客户端的名称并开始发送数据进行测试。
同时,客户端计算机发送信号或心跳信号,表明它已与服务器连接。如果服务器未从客户端计算机收到任何信号,则需要对其进行进一步调查以进行调试。从图中可以看出,服务器可以与2个客户端(Client1和Client2)连接,但是不能发送或接收来自客户端3和4的信号。
夜间运行是运行这些压力测试方案的最佳选择。大型服务器场需要一种更有效的方法来确定哪些计算机出现了压力故障,需要进行调查。
2. 应用压力测试
该测试专注于查找与应用程序中的数据锁定和阻止,网络问题以及性能瓶颈有关的缺陷。
3. 交易压力测试
它对两个或多个应用程序之间的一个或多个事务进行压力测试。它用于微调和优化系统。
4. 系统压力测试
这是集成的压力测试,可以跨同一服务器上运行的多个系统进行测试。它用于查找一个应用程序数据阻止另一应用程序的缺陷。
5. 探索性压力测试
这是压力测试的一种类型,该压力测试用于测试具有在实际场景中不太可能发生的异常参数或条件的系统。它用于发现意外情况下的缺陷,例如

大量用户同时登录
如果病毒扫描程序同时在所有计算机上启动
如果从网站访问数据库时数据库已脱机,
同时将大量数据插入数据库时

如何进行压力测试?


压力测试可以通过5个主要步骤完成:

  1. 规划压力测试。在这里,你可以收集系统数据,分析系统,定义压力测试目标
  2. 创建自动化脚本:在此阶段,你将创建压力测试自动化脚本,为压力场景生成测试数据。
  3. 脚本执行:在此阶段,你将运行压力测试自动化脚本并存储压力结果。
  4. 结果分析:在此阶段,你将分析压力测试结果并确定瓶颈。
  5. 调整和优化:在此阶段,你可以对系统进行微调,更改配置,优化代码,以使其目标达到所需的基准。


压力测试的工具


LoadRunner
HP的LoadRunner是一种广泛使用的负载测试工具。由Loadrunner调整的负载测试结果被视为基准。

Jmeter
Jmeter是一个开放源代码测试工具。它是用于压力和性能测试的纯Java应用程序。Jmeter旨在涵盖负载,功能,压力等测试类型。它需要JDK 5或更高版本才能起作用。
Stress Tester
该工具可以对Web应用程序的性能进行广泛的分析,以图形格式提供结果,并且非常易于使用。不需要高级脚本,即可获得良好的投资回报。
Neo load
这是市场上流行的测试Web和Mobile应用程序的工具。该工具可以模拟成千上万的用户,以便评估负载下的应用程序性能并分析响应时间。它还支持云集成-性能,负载和压力测试。它易于使用,具有成本效益并且提供了良好的可伸缩性。

压力测试指标


度量标准有助于评估系统的性能,通常在压力测试结束时进行研究。常用的指标是-

  1. 衡量可伸缩性和性能
  • 每秒页面数:衡量已请求的页面数/秒
  • 吞吐量:基本指标-响应数据大小/秒
  • 回合:测试方案的计划次数与客户执行的次数
  1. 应用响应时间
  • 命中时间:检索图像或页面的平均时间
  • 到第一个字节的时间:花费时间返回数据或信息的第一个字节
  • 页面时间:花费时间来检索页面中的所有信息
  1. 失败率
  • 失败的连接:客户端拒绝的失败连接数(弱信号)
  • 失败的回合数:失败的回合数
  • 失败命中次数:系统尝试失败的次数(链接断开或看不见的图像)

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

最后: 可以在公众号:自动化测试老司机 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/606029.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Arrays 的使用

Arrays 概述 提供了数组操作的相关方法&#xff0c;连接数组和集合 asList 返回指定数组的列表列表和数组的引用位置相同 Integer[] arrs new Integer[] {1,2,3,4,5,6,7,8,9};List<Integer> list Arrays.asList(arrs);System.out.println(list);arrs[5] 100;Syste…

【设计模式之美】SOLID 原则之二:开闭原则方法论、开闭原则如何取舍

文章目录 一. 如何理解“对扩展开放、修改关闭”&#xff1f;二. 修改代码就意味着违背开闭原则吗&#xff1f;三. 如何做到“对扩展开放、修改关闭”&#xff1f;四. 如何在项目中灵活应用开闭原则&#xff1f; 一. 如何理解“对扩展开放、修改关闭”&#xff1f; 具体的说&a…

如何判断模型陷入局部最优解的陷阱?

判断一个模型是否陷入了局部最优解的陷阱并不总是直观的&#xff0c;但有一些迹象和方法可以帮助我们做出判断&#xff1a; 训练进程停滞&#xff1a; 如果模型的训练误差或验证误差在经过多次迭代后停止改善或改善非常缓慢&#xff0c;这可能是一个迹象。 训练和验证误差的差…

欠拟合与过拟合

在模型训练中&#xff0c;我们总是希望最终的模型在训练集上有很好的拟合即训练误差小&#xff0c;同时在测试集上也要有较好的拟合效果即泛化误差小&#xff0c;但往往不尽人意。 总之&#xff0c;模型的训练是一个不断调整和优化的过程&#xff0c;我们需要根据实际情况选择合…

【EI会议征稿通知】第三届城市规划与区域经济国际学术会议(UPRE 2024)

第三届城市规划与区域经济国际学术会议&#xff08;UPRE 2024&#xff09; 2024 3rd International Conference on Urban Planning and Regional Economy 第三届城市规划与区域经济国际学术会议&#xff08;UPRE 2024&#xff09;于2024年4月19-21日在泰国曼谷举行。会议旨在…

【MySQL】分组(group by)后再筛选(having)巧用 sum(条件表达式) 语法

力扣题 1、题目地址 1083. 销售分析 II 2、模拟表 表&#xff1a;Product Column NameTypeproduct_idintproduct_namevarcharunit_priceint Product_id 是该表的主键(具有唯一值的列)。该表的每一行表示每种产品的名称和价格。 表&#xff1a;Sales Column NameTypesel…

Studio 3T客户端连接Mongodb数据库服务

这里需要注意 一定要先开Studio 3T 到 创建连接时才开Mongodb服务 不然 Studio 3T 会找不到Mongodb服务 不知道这是不是 Studio 3T官方问题 期待解决吧 我们打开 Studio 3T 然后点击 Create a new connection 开始创建连接 新弹出的窗口中选择 Manually configure my connec…

实验4.4 动态路由OSPF协议的配置

实验4.4 动态路由OSPF协议的配置 一、任务描述二、任务分析三、具体要求四、实验拓扑五、任务实施1.配置交换机和路由器的接口的IP地址等参数。2.配置动态路由OSPF协议&#xff0c;实现全网互通。 六、任务验收七、任务小结八、知识链接1&#xff0e;OSPF协议概念2&#xff0e;…

MessageBox打通数字通信:深度解析HubSpot与微信群的无缝对接

在当今数字化时代&#xff0c;企业追求更高效的客户互动方式。HubSpot作为综合性的市场营销、销售和服务平台&#xff0c;其与微信群的无缝对接成为企业数字化沟通的重要一环。今天运营坛将深度解析HubSpot如何精准对接微信群&#xff0c;并着重探讨MessageBox在这一过程中的关…

鸿蒙Ability开发-Stage模型下Ability的创建和使用

创建Ability和Page页面 创建两个Ability&#xff1a;EntryAbility&#xff0c;DetailsAbility&#xff0c;其中EntryAbility是由工程默认创建的&#xff0c;这里我们只讲如何创建DetailsAbility。 使用DevEco Studio&#xff0c;选中对应的模块&#xff0c;单击鼠标右键&…

【DSP原理及应用】实验-CCS的使用与汇编程序设计

目录 实验 CCS的使用和汇编程序设计一、实验目的二、试验设备三、实验内容四、实验程序 实验 CCS的使用和汇编程序设计 一、实验目的 熟悉CCS开发软件 学会C55X汇编语言程序设计 熟悉c55x汇编指令 二、试验设备 计算机&#xff0c;CCS开发环境 三、实验内容 安装CCS5.5 …

vcpkg安装zlmediakit(windows环境)

文章目录 一、简介二、vcpkg安装1. vcpkg源码下载2. vcpkg安装 三、安装zlmediakit1. 默认安装开启特性: [core,mp4,openssl,webrtc]2. 安装全部特性zlmediakit(包括webrtc datachannel)3. 安装路径4. 安装不同的版本5. 卸载 四、问题1. 启动服务乱码问题 一、简介 vcpkg是一个…

2401vim,vim重要修改更新大全

原文 2023 更好的UTF-16支持 添加strutf16len()和utf16idx(),并在byteidx(),byteidxcomp()和charidx()中添加utf16标志,在内置.txt文档中. 添加crypymethod xchacha20v2 与xchacha20基本相同,但更能抵御libsodium的变化. 2022 添加"smoothscroll" 用鼠标滚动…

Saprk SQL基础知识

一.Spark SQL基本介绍 1.什么是Spark SQL Spark SQL是Spark多种组件中其中一个,主要是用于处理大规模的[结构化数据] Spark SQL的特点: 1).融合性:既可以使用SQL语句,也可以编写代码,同时支持两者混合使用. 2).统一的数据访问:Spark SQL用统一的API对接不同的数据源 3).H…

超好用的阅读器更新摸鱼模式啦

潮汐阅读器重磅更新啦&#xff01;这次更新的是隐蔽模式&#xff08;摸鱼模式&#xff09;。 何为隐蔽模式&#xff1f;就是将阅读窗口的标题栏隐藏掉&#xff0c;从而可以使阅读窗口可以隐藏在任意其他窗口里面不被发现&#xff0c;从而可以快乐的看小说摸鱼啦&#xff01; …

InfluxDB学习笔记

本博客是我在学习InfluxDB的时候&#xff0c;记录的笔记&#xff0c;大家可以看看参考学些。 简介 简述 InfluxDB是一个由InfluxData开发的开源时序型数据。它由Go写成&#xff0c;着力于高性能查询与存储时序型数据。InfluxDB被广泛应用于存储系统的监控数据&#xff0c;IoT…

18.将文件上传至云服务器 + 优化网站的性能

目录 1.将文件上传至云服务器 1.1 处理上传头像逻辑 1.1.1 客户端上传 1.1.2 服务器直传 2.优化网站的性能 2.1 本地缓存优化查询方法 2.2 压力测试 1.将文件上传至云服务器 客户端上传&#xff1a;客户端将数据提交给云服务器&#xff0c;并等待其响应&#xff1b;用户…

软件工程造价师证书有用吗?难不难考?

&#x1f3af;软件工程造价师证书是有用的&#xff0c;它证明了持有人具备评估和估算软件开发cheng本、进度和资源规划的能力。✔️在IT行业中&#xff0c;受高度重视&#xff0c;特别是在软件开发和项目管理领域。 &#x1f469;软件工程造价师考试难易程度因人而异。该证书需…

影响代理IP稳定性的因素有哪些?

代理IP作为一种网络服务&#xff0c;在生活中扮演着各种各样的角色。它们可以用于保护隐私、突破访问限制、提高网络安全性等。代理IP的稳定性受到多种因素的影响&#xff0c;下面和大家探讨一下影响代理IP稳定性的因素。 1、网络环境&#xff1a;代理IP所处的网络环境对它的稳…

腾讯云新用户的定义与权益

腾讯云作为国内领先的云计算服务提供商&#xff0c;吸引了越来越多的用户。对于新用户来说&#xff0c;了解腾讯云的新用户定义和相关权益非常重要&#xff0c;因为它关系到用户能否享受到更多的优惠和服务。 一、腾讯云新用户的定义 腾讯云新用户是指首次注册腾讯云账号并且没…