性能测试中的可伸缩性测试

发表于:2019-11-21 10:55  作者:vsky   来源:高阶软件测试

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签: 性能测试 软件测试技术

  可伸缩性测试是对承受高负载的网站进行的一种测试。这里的“负载”是指使用该网站的用户数量。进行可伸缩性测试,以检查开发的网站是否具有足够的能力来处理较大的负载。
  市场上有几种工具可以执行可伸缩性测试,例如Apache JMeter,HP Performance Tester(LoadRunner),WebLoad,NeoLoad,LoadView等。可伸缩性测试有助于分析系统,计算机,网络,程序或应用程序的速度,有效性,可靠性,可伸缩性和互操作性。
  可伸缩性测试的另一个最重要的用途是,如果负载增加,则检查服务器是否崩溃。另外,此测试不仅确定网站的性能,而且还有助于发现数据库中您需要存储新客户的所有数据的问题。
  负载条件分为三种:低负载,中负载和重负载。有时很难分析在2年,3年或5年左右的时间范围内增加或减少的用户数量。因此,执行可伸缩性测试以确定各种负载条件(低,中和重负载)。此外,它还分析了网站在各种加载条件下加载所需的时间。该测试不仅确定网站的性能,而且还有助于发现数据库中您需要存储新客户的所有数据的问题。
  可伸缩性测试中执行了哪些任务?
  网站的响应时间。
  每秒点击,请求和交易。
  各种负载(用户数量)-低或中等负载。
  Web服务器(每秒请求或响应)。
  数据发送和接收。
  由于负载增加,数据库中数据存储的影响。
  内存(CPU)使用情况。
  加载网页或网站需要花费时间。
  负载测试过程:
  1)为负载测试创建测试环境。
  2)确定负载测试方案,例如:
  准备数据。
  预测许多测试该应用程序的用户。
  针对各种速度条件进行测试。例如,使用LAN或专线连接或使用拨号连接的用户。
  在Chrome,Firefox,Safari,Internet Explorer,Opera等应用程序支持的各种浏览器(具有不同版本)中进行测试。
  所有服务器(如Web,应用程序和数据库服务器)的配置。
  3)执行测试方案并分析结果。
  4)重新测试。
  可伸缩性测试中使用的工具:
  1)JMeter
  JMeter是一个用于测试应用程序性能的开源工具。它用于测试强度并分析各种负载条件下的整体性能。它是可移植的,并且支持100%基于Java的产品和应用程序。它在协议级别工作。
  它看起来像浏览器,但是不会执行浏览器支持的所有操作。它是一个Java桌面应用程序。它支持不同的应用程序或协议,例如HTTP,HTTPS,FTP,SOAP,TCP,Java对象,LDAP等。它可以在接受Java虚拟机的环境/工作站上运行,例如:WindowsLinux,Mac等。借助JMeter,我们可以生成测试计划。
  2)LoadRunner
  这是性能测试行业中使用最广泛的工具之一。它是由Hewlett Packard Enterprise开发的。它用于测试应用程序的性能行为。将负载应用于测试中的应用程序时,负载运行程序将分析性能并提供所需的结果。LoadRunner通过记录脚本来生成脚本。
  LoadRunner的体系结构包括以下组件:
  负载生成器-生成负载
  VuGen(虚拟用户生成器)-它有助于生成脚本。
  Controller-It控制并指定要使用的脚本以及持续时间。
  代理进程-建立或控制Controller和Load Generator实例之间的连接。
  分析组装来自各种负载生成器的日志。
  3) WebLoad
  它是一个负载测试工具。它是由Red View软件开发的。借助Web加载工具,我们可以衡量移动或Web应用程序的性能,可伸缩性和负载。借助此工具,我们可以测量重负载并生成分析报告。它还可以突出显示应用程序中的弱点。Web加载的主要优点是与其他工具相比,其维护成本非常低。而且,它可以分析任何浏览器或移动设备的性能测试结果。
  4) NeoLoad
  它由Neotys开发并用Java编写。提供英语和法语两种语言。它可以测量负载和压力。该工具的优势在于,它可以积累数百万个用户,以便确定负载下的应用程序性能。它支持多种类型的身份验证,可以记录HTTPS请求并进行回放。它支持混合和本机移动应用程序。
  可伸缩性测试中的挑战:
  有时,使用可伸缩性测试无法识别功能错误。
  理想情况下,可伸缩性测试应在实际场景或生产环境中执行。但是由于预算限制,客户可能无法提供环境。
  需要对系统有充分的了解才能分析结果报告。
  有时很难猜测要施加的压力。
  可伸缩性测试的不同阶段/生命周期:
  可扩展性测试主要分为四个阶段或阶段-
  1)结构验证阶段 –在此阶段,主要验证应用程序中的事务。换句话说,验证了应用程序结构的可伸缩性。
  2)基准测试阶段 –在这一阶段,开发了一组度量标准或建立了基准,以测试应用程序的可伸缩性。
  3)回归测试阶段 –如果有任何更改请求到达,则执行这种类型的测试。该应用程序应足够稳定,并且即使进行任何更改也应给出相同的响应。该应用程序应该稳定并且可伸缩性不会降低。
  4)精细控制阶段 -集成了应用程序的所有单元,以测试软件的完整可伸缩性和工作负载能力。
  为什么可伸缩性测试很重要?
  1. 消费者满意度:
  在市场上发布任何产品或应用程序之前,可伸缩性测试很重要,因为随着该应用程序市场的增长,用户数量将会增加。客户满意度被视为头等大事。该应用程序应该能够随时间处理各种负载情况(用户数量)。它不应该崩溃。加载时间应该更少,用户应该能够在非常短的时间内(几秒钟之内)访问应用程序。因此,为了保持性能,应在处理产品或应用程序之前适当地进行可伸缩性和性能测试。客户。
  2. 提高产品耐用性和寿命:
  在软件开发生命周期中,维护阶段至关重要。为了提供高质量的产品,必须正确执行可伸缩性和性能测试。该报告可以保证良好的耐久性和使用寿命。
  总结:
  为了向客户交付优质产品,测试其性能和可伸缩性非常重要。因此,在产品完全开发之后进行可伸缩性测试,以确保并保证最佳性能和耐用性。如今,几乎所有公司,无论是基于产品还是基于服务的公司,都在扩展其服务并扩展可伸缩性测试。它是软件开发和测试的最重要阶段之一。
  市场上有大量具有成本效益的开源工具,这使得测试过程非常容易。客户极力推荐和要求可伸缩性和性能测试。随着用户数量的增加或减少。因此,该网站应能够处理所有类型的负载(重,中,低),并应具有足够的响应能力(加载时间应非常短且恒定)。为了确保网站是否能够处理负载并测量规模,强烈建议进行这种测试。

      本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理

【福利】填问卷送精选测试礼包+接口测试课程!为测试行业做点事!

评 论

论坛新帖

顶部 底部


建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海瀛东律师事务所 张楠律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2020, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道