测试动态 / 质量专栏 / 性能测试的混合方法
性能测试的混合方法
2023-08-31 浏览次数:1339

  Web 性能的基本原理强调,在大多数网页中,用户接收响应所需时间的一小部分(大约 10-20%)用于将 HTML 文档从 Web 服务器传输到浏览器。相比之下,用户响应时间的大部分(大约 80-90%)都用在网站的前端。

  关于性能测试,一种常见的做法通常是对后端服务器进行负载测试。很明显,一旦我们优化了服务器和数据库,我们的应用程序就会展现出良好的性能。

  我们的服务器已响应特定请求这一事实并不能确保这些响应对网页上的用户立即可见。许多变量在前端性能中发挥着关键作用,强调了彻底测试以确保最佳用户体验的重要性。

  一、什么是混合方法?

  进行性能测试的混合方法可以让测试人员从一开始就发现软件系统运行情况的问题。

  他们可以确保软件应用程序满足其预期的性能目标。当人们实际使用软件时,它也非常擅长降低出现性能问题的机会。发生这种情况是因为测试创建了类似于现实世界中发生的情况,但在安全且受控的环境中。

  二、后端性能:揭开基础

  当我们谈论后端性能测试时,我们针对的是应用程序的核心基础设施。这可能包括微服务、数据库和其他隐藏组件。这不仅仅是响应时间的问题;后端性能体现了可扩展性、可用性、弹性、可靠性和弹性。

  让我们更深入地研究其中的一些属性:

  1、可扩展性:可扩展性衡量应用程序调整硬件或软件资源以管理使用波动的能力。它确保您的系统可以处理增加或减少的负载。

  2、弹性:弹性反映了系统自动扩展以满足用户需求的能力。它确保您的应用程序可以动态适应变化的流量。

  3、弹性:弹性涉及系统在发生故障时仍保持功能的能力。它关系到您的应用程序对不良事件做出反应并从中恢复的能力。

  三、前端性能:连接用户体验

  关注浏览器级别用户体验的前端性能。它测量加载时间、交互性和视觉稳定性。核心 Web Vitals(例如 LCP、FID 和 CLS)定义了前端性能指标。

  四、揭示负载测试类型

  负载测试下的测试类型

  1、冒烟测试:冒烟测试衡量您的系统处理最小负载而不会出现问题的能力。它对于验证脚本的准确性和基本功能很有用。

  2、负载测试:负载测试检查应用程序在典型或预期负载下的行为。它有助于识别负载波动期间的性能下降。

  3、压力测试:压力测试评估系统在最大预期负载下的性能。这对于确认您的应用程序处理峰值流量的能力至关重要。

  4、尖峰测试:尖峰测试模拟突然、强烈的流量尖峰,以测试系统的生存能力。这对于黑色星期五促销或高需求情况等活动至关重要。

  5、浸泡测试:浸泡测试延长了测试周期,以评估长时间内的可靠性。它对于发现内存泄漏或间歇性问题非常有效。

  性能测试工具,例如 Gattle、K6、JMeter、Artillery 和 Locust。这些工具通常使用 HTTP 通过请求模拟用户流量。

  五、优点和缺点:后端和前端性能测试

  1、后端性能测试

  优点:它提供了开发过程中的早期集成、可扩展性以及资源密集程度较低的流程。它提倡持续测试方法并在问题升级之前解决问题。

  缺点:后端测试可能会错过前端问题,随着应用程序的发展需要维护,并导致复杂的用户流产生复杂的脚本。

  2、前端性能测试

  优点:前端测试直接评估用户体验,验证源自前端的性能问题的“80%规则”,并且更容易被测试工程师所接受。

  缺点:前端测试不会深入研究后端机制,缺乏真实的流量条件,并且在扩展时可能会产生误导性的结果。

  六、混合方法:前端和后端

  为了充分利用两全其美,可以考虑采用混合方法。这涉及在协议级别模拟大部分负载,同时集成浏览器虚拟用户与前端交互。

  k6 等性能测试工具旨在提供无缝的开发人员体验。k6 提供了一个融合了浏览器和协议测试的浏览器模块,可以在整个应用程序中提供有价值的见解。

  然后,Marie 演示了一个使用 k6 进行混合性能测试的实际示例,说明如何同时运行浏览器和协议测试,利用场景来定义独特的用户交互。使用 k6 执行混合性能测试会生成浏览器和后端指标的聚合视图。这些指标全面概述了应用程序性能,以便进一步分析和优化。

  七、问答环节

  1、这种方法如何智能地结合虚拟用户和真实用户数据以提供更全面的性能分析的复杂性?

  这种方法涉及虚拟用户和真实用户数据的战略组合,以进行彻底的性能分析。当使用 k6 浏览器时,该方法需要为生成合成数据的受控环境编写脚本。k6 与 Grafana Labs 的集成促进了补充工具的利用。

  取得平衡至关重要;仅仅依靠合成数据是不够的。Chrome 用户体验报告或 Google Search Console 等工具对于快速概览非常有用。然而,真实的用户数据有局限性——反映变化的速度较慢。这强调了需要像 k6 这样的综合工具来衡量直接影响。

  2、如何使用 k6 对 SQL 或 NoSQL 数据库进行负载测试?

  利用 k6 进行数据库负载测试涉及为此目的而设计的扩展。在 k6 Studio 中提供的 k6 扩展页面上,人们可以探索为不同数据库进行负载测试而定制的各种示例扩展。

  这些扩展使用户能够模拟和评估重负载对 SQL 或 NoSQL 数据库的影响。社区提供的见解以及记录的场景有助于设计有效的负载测试和评估数据库性能。

  3、是否可以进行一对一迁移来迁移现有的 JMeter 测试用例?如果没有,是否计划将该功能纳入更多用户?

  最小化浏览器级重放的资源占用的目标确实是一个优先事项。专注于逐步增强 k6 中浏览器 API 的功能。最终目标是与 Playwright API 紧密结合,努力实现兼容性。这种一致性使用户能够主要在浏览器级别复制用户旅程流。

        卓码软件测评是一家[ 具备CMA、CNAS双重资质 ]的专业做软件测试的第三方软件测试服务机构, 可根据您的需求提供各类软件测试服务,并出具合格有效的软件测试报告。点击→→可了解测试报价

        部分文字、图片来自网络,如涉及侵权,请及时与我们联系,我们会在第一时间删除或处理侵权内容。负责人:曾菲       电话:4006070568


文章标签: 性能测试
热门标签 换一换
检测报告 软件检测流程 软件检测报告 第三方软件检测 第三方软件检测机构 第三方检测机构 软件产品确认测试 软件功能性测试 功能性测试 软件崩溃 稳定性测试 API测试 API安全测试 网站测试测评 敏感数据泄露测试 敏感数据泄露 敏感数据泄露测试防护 课题软件交付 科研经费申请 软件网站系统竞赛 竞赛CMA资质补办通道 中学生软件网站系统CMA资质 大学生软件网站系统CMA资质 科研软件课题cma检测报告 科研软件课题cma检测 国家级科研软件CMA检测 科研软件课题 国家级科研软件 web测评 网站测试 网站测评 第三方软件验收公司 第三方软件验收 软件测试选题 软件测试课题是什么 软件测试课题研究报告 软件科研项目测评报告 软件科研项目测评内容 软件科研项目测评 长沙第三方软件测评中心 长沙第三方软件测评公司 长沙第三方软件测评机构 软件科研结项强制清单 软件课题验收 软件申报课题 数据脱敏 数据脱敏传输规范 远程测试实操指南 远程测试 易用性专业测试 软件易用性 政府企业软件采购验收 OA系统CMA软件测评 ERP系统CMA软件测评 CMA检测报告的法律价值 代码原创性 软件著作登记 软件著作权登记 教育APP备案 教育APP 信息化软件项目测评 信息化软件项目 校园软件项目验收标准 智慧软件项目 智慧校园软件项目 CSRF漏洞自动化测试 漏洞自动化测试 CSRF漏洞 反序列化漏洞测试 反序列化漏洞原理 反序列化漏洞 命令执行 命令注入 漏洞检测 文件上传漏洞 身份验证 出具CMA测试报告 cma资质认证 软件验收流程 软件招标文件 软件开发招标 卓码软件测评 WEB安全测试 漏洞挖掘 身份验证漏洞 测评网站并发压力 测评门户网站 Web软件测评 XSS跨站脚本 XSS跨站 C/S软件测评 B/S软件测评 渗透测试 网站安全 网络安全 WEB安全 并发压力测试 常见系统验收单 CRM系统验收 ERP系统验收 OA系统验收 软件项目招投 软件项目 软件投标 软件招标 软件验收 App兼容性测试 CNAS软件检测 CNAS软件检测资质 软件检测 软件检测排名 软件检测机构排名 Web安全测试 Web安全 Web兼容性测试 兼容性测试 web测试 黑盒测试 白盒测试 负载测试 软件易用性测试 软件测试用例 软件性能测试 科技项目验收测试 首版次软件 软件鉴定测试 软件渗透测试 软件安全测试 第三方软件测试报告 软件第三方测试报告 第三方软件测评机构 湖南软件测评公司 软件测评中心 软件第三方测试机构 软件安全测试报告 第三方软件测试公司 第三方软件测试机构 CMA软件测试 CNAS软件测试 第三方软件测试 移动app测试 软件确认测试 软件测评 第三方软件测评 软件测试公司 软件测试报告 跨浏览器测试 软件更新 行业资讯 软件测评机构 大数据测试 测试环境 网站优化 功能测试 APP测试 软件兼容测试 安全测评 第三方测试 测试工具 软件测试 验收测试 系统测试 测试外包 压力测试 测试平台 bug管理 性能测试 测试报告 测试框架 CNAS认可 CMA认证 自动化测试
专业测试,找专业团队,请联系我们!
咨询软件测试 400-607-0568