性能测试常见风险以及消减措施

性能测试过程中会遇到各种各样的风险,常见风险以及消减措施有哪些?

一: 时间

一)时间相关风险

时间相关风险不仅限于最终用户满意度,尽管这是大多数人首先想到的。时间也是某些与业务和数据相关的风险因素。性能测试可以解决的最常见的时间相关风险包括:

1. 应用程序是否够快以满足最终用户?

2.业务是否能够在数据过时之前处理和利用应用程序收集的数据?(例如,月末报告应在月底最后一天营业后24小时内完成,但应用程序需要48小时来处理数据。)

3. 应用程序是否能够向其用户呈现最新的信息(例如,股票报价)?

4. Web服务是否在抛出错误之前响应了最大预期响应时间?

二)缓解时间相关风险的策略

以下策略在缓解速度相关风险方面很有价值:

1.确保您的性能要求和目标代表您的用户的需求和愿望,而不是其他人的需求和愿望。

2.将您的速度测量结果与以前的版本和竞争对手的应用程序进行比较。

3.设计可以在正常和预期峰值时段复制实际工作负载的负载测试。

4.在实际生产期间与业务操作中使用的类似数据类型、分布和体量进行性能测试(例如,产品数量、待定订单状态的订单数量、用户基数的大小)。您可以在负载测试执行之前允许数据在数据库和文件服务器中累积,或者额外创建数据量。

5.使用性能测试结果帮助利益相关者做出明智的架构和业务决策。

6.在系统处于预期最大负载时,征求代表用户对系统满意度的反馈。

7. 在您的性能测试中包括时间关键事物。

8. 确保至少有一些性能测试是在定期系统进程执行时进行的(例如,下载定义更新或每周备份期间)。

9. 在各种条件、负载级别和场景组合下测量速度。(用户重视稳定的速度。)

10. 验证在您的性能测试期间显示和保存了所有正确的数据。(例如,用户更新信息,但确认屏幕仍显示旧信息,因为事务尚未完成写入数据库。)

二:可扩展性

一)扩展性相关风险

扩展性风险不仅涉及应用程序可以支持的用户数量,还涉及应用程序可以包含和处理的数据量,以及识别应用程序何时接近容量的能力。性能测试可以解决的常见扩展性风险包括:

1. 应用程序是否可以为 所有 用户基数提供一致和可接受的响应时间?

2. 应用程序是否可以存储在应用程序生命周期内收集的所有数据?

3. 是否有警告迹象表明应用程序即将达到最大容量?

4. 在高强度使用下,应用程序是否仍然安全?

5. 在高强度使用下,功能是否会受到损害?

6. 应用程序是否能够承受意外的峰值负载?

二)缓解扩展性相关风险的策略

以下策略在缓解扩展性相关风险方面很有价值:

1. 比较在各种负载下测量的速度。(请记住,最终用户不知道或不在乎其他人在同一时间使用应用程序的人数。)

2. 设计可以在正常和预期峰值时段复制实际工作负载的负载测试。

3. 在实际生产期间与业务操作中使用的类似数据类型、分布和体量进行性能测试(例如,产品数量、待定订单状态的订单数量、用户基数的大小)。您可以在负载测试执行之前允许数据在数据库和文件服务器中累积,或者额外创建数据量。

4. 使用性能测试结果帮助利益相关者做出明智的架构和业务决策。

5. 与更有意义的性能测试合作,这些测试映射到现实世界的要求。

6. 当您找到扩展性限制时,逐渐减少负载并重新测试,以帮助您识别可作为您及时采取对策的可靠指标的指标。

7.通过检查在各种负载下创建的数据库条目或验证对特定用户请求的响应返回的内容来验证应用程序的功能准确性。

8.进行超出预期峰值负载的性能测试,并通过让代表性用户和利益相关者在性能测试期间和之后手动访问应用程序来观察行为。

三: 稳定性

一)稳定性相关风险

稳定性是一个总括术语,涵盖可靠性、正常运行时间和恢复性等方面。尽管稳定性风险通常通过高负载、耐久性和压力测试得到解决,但稳定性问题有时也会在最基本的性能测试中检测到。性能测试可以解决的一些常见稳定性风险包括:

1. 应用程序是否可以长时间运行而不会数据损坏、减速或服务器需要重启?

2. 如果应用程序意外关闭,部分完成的事务会发生什么?

3.当应用程序在计划内或计划外停机后重新上线时,用户是否仍然能够看到/做他们期望的一切?

4. 当应用程序在非计划停机后重新上线时,它是否在正确的点上恢复?特别是,它是否不会尝试恢复已取消的事务?

5. 错误或重复的功能错误组合会导致系统崩溃吗?

6.是否有任何事务会导致系统范围的副作用?

负载平衡环境的一条腿是否可以关闭而仍然为用户提供不间断的服务?

7.系统是否可以在不关闭的情况下打补丁或更新?

二)缓解稳定性相关风险的策略

以下策略在缓解稳定性相关风险方面很有价值:

1. 为现实的耐久性测试留出时间。

2. 使用关键场景进行压力测试。使用关键性能指标(网络、磁盘、处理器、内存)和业务指标(丢失的订单数量、用户登录失败等)。

3. 与实际生产环境中的类似业务操作一起进行压力测试(例如,产品数量、待定订单状态的订单数量、用户基数的大小)。您可以在压力测试执行之前允许数据在数据库和文件服务器中累积,或者额外创建数据量。这将允许您复制关键错误,例如数据库或应用程序死锁以及其他压力故障模式。

4. 在测试期间关闭一台服务器,并观察剩余系统的功能、性能和数据完整性行为。

5.在系统重新启动之前和之后立即执行相同的测试。比较结果。您可以对服务或进程的循环使用相同的方法。

6. 在您的性能测试方案中包括错误或异常案例(例如,用户试图使用不正确的凭据登录)。

7. 在性能测试期间打补丁系统。

8. 在性能测试期间强制备份。

行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入扣群: 320231853,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

链表+环-链表是否有环的判断

链表是否有环的判断 在数据结构中,链表是一种常见的数据结构,它允许我们在不需要预先知道数据总量的情况下进行数据的动态存储。然而,由于链表的特性,有时我们可能会遇到链表中出现环的情况,即链表的某个节点指向了链…

NXP i.MX8系列平台开发讲解 - 1.1 导读前言

专栏文章目录传送门:返回专栏目录 文章目录 目录 1. 本专辑介绍 2. 学习本专辑作用 3.关于作者 1. 本专辑介绍 本专辑将会介绍Linux 驱动开发,Android BSP 驱动涉及HAL层调试,适用于嵌入式软件开发人员,和有兴趣向该方向发展…

怎么制作地图位置二维码?扫码获取地图信息的方法

随着互联网的不断发展,二维码在工作和生活中的应用不断的增多,可以针对不同的用途展示内容。比如现在很多的商家或者店铺会将定位定制生成二维码,印刷到传单或者宣传海报上,就可以让用户通过扫码获取位置,方便精准定位…

(论文阅读-分析引擎)Modin

一、简介 目标是在不改变的Dataframe语义的情况下支持可扩展的dataframe操作。 什么是机会主义评价?Opportunistic Evaluation? Exploratory data analysis(EDA):总结、理解并从数据集中获取价值的过程。 MPI&#…

如何使用dockerfile文件将项目打包成镜像

要根据Dockerfile文件来打包一个Docker镜像,你需要遵循以下步骤。这里假设你已经安装了Docker环境。 1. 准备Dockerfile 确保你的Dockerfile文件已经准备就绪,并且位于你希望构建上下文的目录中。Dockerfile是一个文本文件,包含了用户可以调…

Omnity 进展月报 | 2024.4.1-4.30

Omnity 大事摘要 1、Octopus 官宣升级为 Omnity。 2、Omnity 4月28号正式上线,实现BTC 和 ICP 之间跨链转账 Runes 资产。 3、为庆祝上线,以符文 HOPE•YOU•GET•RICH 为资产,发红包快速触达大量用户,体验跨链服务。 4、Omni…

layui的treeTable组件,多层级上传按钮失效的问题解决

现象描述: layui的treeTable 的上传按钮在一层能用,展开后其他按钮正常点击,上传按钮无效。 具体原因没有深究,大概率是展开的子菜单没有被渲染treeTable的done管理到,导致没有重绘上传按钮。 解决方案: 不使用layu的上传组件方法…

深入解析:企业级OV SSL证书的技术价值与应用实践

JoySSL官网 注册码230918 在互联网安全日益受到重视的今天,SSL证书已成为保护网站数据传输安全的基石。其中,企业级OV(Organization Validation)SSL证书凭借其增强的安全特性和对企业身份的严格验证,在众多类型的SSL证…

Phi-3:手机上就能运行的强力语言模型

导语 phi-系列模型是微软研究团队推出的轻量级人工智能模型,旨在实现“小而精”的目标,能够实现在低功耗设备上例如智能手机和平板电脑上部署运行。截止目前,已经发布到了phi-3模型,本系列博客将沿着最初的phi-1到phi-1.5&#x…

HarmonyOS实战开发-如何通过Text实现部分文本高亮和超链接。

介绍 本示例通过自定义Span类型,在Text组件中使用ForEach遍历,根据不同的Span类型生成不同样式和功能的Span组件,实现部分文本高亮和超链接。 效果图预览 使用说明 点击超链接,根据链接类型出现相应提示弹窗。长按消息卡片出现…

不必追求深度,浅尝辄止为宜

近日笔者撰文称,有幸应《百度-百家号》相邀,在其发起的《征文任务》栏目中写作深度文章,便试着开头写了一篇《万科有“活下去”的可能性吗?》的时评文章,于5月3日发表,舆情反映不错,不到三天时间…

重生奇迹mu套装大全

1.战士 汉斯的皮套装:冰之指环,皮护腿,皮盔,皮护手,皮靴,皮铠,流星槌 汉斯的青铜套装:青铜护腿,青铜靴,青铜铠 汉斯的翡翠套装:雷之项链,翡翠护腿,翡翠盔,翡翠铠,远古之盾 汉斯的黄金套装:火之项链,黄金护腿,黄金护手,黄金靴,…

(双指针) 有效三角形的个数 和为s的两个数字 三数之和 四数之和

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 文章目录 前言 一、有效三角形的个数(medium) 1.1、题目 1.2、讲解算法原理 1.3、编写代码 二、和为s的两个数字 2.1、题目 2.2、讲解算…

动手开发基于Springboot的基础开发框架-01

本系列专题虽然是按教学的深度来定稿的,但在项目结构和代码组织方面是按生产系统的要求来书定的。在本章中主要介绍下基础开发框架的内容。后续所有章节的项目全是在本基础框架的基础上演进的。 工程结构介绍 SpringbootSeries:父工程,定义一…

【信息熵理论-01】最大熵的分布

文章目录 一、说明二、如何认识所谓的“熵”三、熵最大化问题3.1 设置最大化3.2 利用变分微积分 四、更广泛的影响和见解 一、说明 我觉得用最大熵来获取概率分布的方法很给力。您采用一些已知或约束,然后在这些条件下最大化信息熵,瞧!你有一…

前端基础学习html(2)

目录 表格标签&#xff1a; 列表标签&#xff1a; 表格标签&#xff1a; <!-- 表格基本架构 --><!-- tr表示一行&#xff0c;td表示一行内单元格 --><!--th为第一行表头加粗居中显示 --><table border"1"><thead><tr><th&g…

【Linux】17. 进程间通信 --- 管道

1. 什么是进程间通信(进程间通信的目的) 数据传输&#xff1a;一个进程需要将它的数据发送给另一个进程 资源共享&#xff1a;多个进程之间共享同样的资源。 通知事件&#xff1a;一个进程需要向另一个或一组进程发送消息&#xff0c;通知它&#xff08;它们&#xff09;发生了…

sqlmodel实现唯一性校验3,检查多列同时重复

之前的方案虽然能够解决重复性问题&#xff0c;但是没有覆盖到多列同时重复的情况。 比如&#xff0c;我们可以认为用户名是可以重复的。但是用户名和年龄不能同时重复&#xff0c;那么这种情况该怎么解决呢&#xff1f; 之前的代码如下&#xff1a; from sqlalchemy import…

python直接发布到网站wordpress之三批量发布图片

在前面的文章中&#xff0c;实现了使用python操作wordpress发布文字内容和图片内容。 python直接发布到网站wordpress之一只发布文字-CSDN博客 python直接发布到网站wordpress之二发布图片-CSDN博客 不过&#xff0c;此时发布图片的数量只能是一张图片。但在实际应用中&…

效率跨越式提升的工农业对机器人专业的需求

需求 需要用人的地方一定会逐步收缩。 原来需要人的地方也会逐步被机器人取代。 机器人这个专业最强的悖论就是可以部分取代人。 此处&#xff1a;用人的地方是指“工农业”&#xff0c;包括工业和农业。 机器人工程行业算制造业吗 机器人工程终身学习和工作计划 趋势 工匠…