负载测试是一种确保软件在真实场景下工作良好的方法。188金宝搏官网登录app
负载测试工具用于使用虚拟用户(vu)在各种软件应用程序上重新创建真实用户的行为。188金宝搏官网登录app根据负载测试的性质和要求,它可以模拟一个到几百万个vu。这种复制如此多用户的能力使其成为不可或缺的工具——因为人类不可能在如此大规模上进行这种测试。
该工具可以在内部部署或云中使用。对于需要大量vu的极端测试,需要许多服务器。在这种情况下,在云中测试是更好的选择,因为它比内部部署解决方案更容易扩展。负载测试工具用于:
使用负载测试工具可以识别和解决系统在不同场景中可能遇到的瓶颈。这有助于防止在实时生产环境中出现问题——这可能会对业务产生负面影响。
通过在实际场景中进行测试,负载测试工具有助于防止软件性能不佳——包括令人讨厌的响应时间。188金宝搏官网登录app它还可以用于帮助管理和监控实时生产环境中的性能水平。
负载测试工具由许多不同的专业人员使用:
设置组织在做决定时应该考虑。
功能描述
创建真实的测试脚本。
快速设计测试,包括复杂的测试。
特点和优点
对于性能工程师:创建复杂的测试脚本,模拟真实世界用例的多样性。
对于开发人员:用代码快速生成API测试。
功能描述
支持多种Web协议——HTTP、Java等;旧的协议,如SAP GUI和Oracle Forms。
特点和优点
提供扩展协议支持,以便测试人员可以测试所有当前的应用程序。
模拟复杂的协议行为来创建真实的测试。
为新出现的协议提供早期支持。
功能描述
模拟移动用户。
特点和优点
移动设备的行为与桌面设备不同。考虑到移动网络条件和不同设备的具体情况,它们必须被隔离和真实地模拟。
功能描述
生成本地和云负载——或者两者的组合。
特点和优点
易于安装的内部部署测试工具,但需要在加载基础设施上进行投资
云更适合生成极端负载测试(具有数千个vu的测试)。它可以在防火墙之外创建负载来模拟现实情况
根据正在测试的应用程序,采用使用内部部署和云基础设施的vu组合可能是合适的。
功能描述
管理/储备负载基础设施。
特点和优点
在大型组织中,管理负载基础设施可能具有挑战性
使团队能够协作并共享测试资源(例如负载生成器和VU许可)。
功能描述
扩展到数千甚至数百万个vu。
特点和优点
并不是所有的负载测试工具都可以进行扩展,以适应具有数千甚至数百万个虚拟单元的重要测试
生成数以百万计的虚拟用户——无论是在本地还是在云端
同步数十或数百个控制器,以确保负载生成器同步
创建测试报告和分析,为多个控制器和负载生成器聚合这些数据。
功能描述
分析已测试的应用程序并确定瓶颈
特点和优点
必须有自己的监控能力或至少能够导入监控数据进行分析
必须能够提供可操作的决策信息,以识别和帮助解决瓶颈
功能描述
与持续集成服务器集成以自动执行性能测试
特点和优点
它是否提供了与最流行的CI/CD服务器的标准集成?
它是否提供了支持与第三方集成的API ?
它是否允许基于代码的测试将性能测试集成到一个完全自动化的过程中?
它是否提供自动化的成功/失败SLA结果,以便测试结果可以完全自动化?
功能描述
与其他功能测试设备(如Selenium)集成
特点和优点
通过与其他工具的集成,该设备允许您重用现有的功能测试脚本进行负载测试,从而加快了设计阶段。
为终端用户体验使用“基于浏览器”的性能指标
功能描述
使不同的团队能够在性能测试过程和结果分析上进行协作
特点和优点
必须允许您共享测试资源(脚本、结果等)以及测试基础结构本身,包括负载生成器和VU许可。
必须支持团队一起工作。
功能描述
确保所创建数据(用户登录和个人信息等)的安全性。
特点和优点
必须加密它处理的数据。
必须是完全安全的,绝对没有可能危及数据安全的后门。
功能描述
在各种情况下支持其客户(不同的协议和自定义应用程序等)。
特点和优点
测试人员必须能够根据vu定制协议,以创建真实的测试
将性能测试集成到CI/CD管道中以实现自动化
必须为测试人员提供最佳实践指导。
有几种类型的负载测试工具,具有不同但互补的方法:
负载测试工具也有不同的类别:
描述
领先的负载测试工具。
满足了什么需要?
适用于所有测试要求-从API测试到单个应用程序测试。专为企业市场和卓越测试中心,以及敏捷/DevOps团队设计。
描述
广泛应用于大型组织。
满足了什么需要?
满足大型组织的需求。支持复杂的用例,但专用于专家使用,因为它们使用起来同样复杂。
两者的实现/维护成本都很高。
描述
开源负载测试工具
满足了什么需要?
非常适合负载测试的基本需求,但不支持诸如SAP GUI之类的遗留协议。需要第三方业务工具进行云和移动测试。
描述
基于JMeter
满足了什么需要?
除了JMeter的开源功能之外,还提供报告和云计算功能。
对复杂测试条件下JMeter功能的有限支持。