扫码分享给我的朋友
性能测试是一种非功能软件测试技术,能够确定应用程序在给定工作负载下的稳定性、速度、可伸缩性和响应能力。 性能测试是确保软件质量的关键步骤,但遗憾的是,它经常被视为单独的事后步骤,并且在功能测试完成之后才进行,在大多数情况下,甚至要在代码准备发布之后才进行。
性能测试的目的包括评估应用程序输出、处理速度、数据传输速度、网络带宽使用、最大并发用户、内存利用率、工作负载效率和命令响应时间。
组织至少出于以下原因之一运行性能测试:
确定应用程序是否满足性能要求(例如,系统应该能够处理最多 1,000 个并发用户)。
定位应用程序中的计算瓶颈。
确定软件供应商所宣称的性能水平是否属实。
比较两个或以上的系统,并确定其中性能最好的一个。
测量高峰流量事件下的稳定性。
性能测试的具体步骤因组织和应用程序的不同而异。 这取决于企业认为最重要的性能指标是什么。 然而,性能测试的总体目标在很大程度上是相同的,因此大多数测试计划都会遵循一定的工作流程。
确定可供您使用的生产环境、测试环境和测试工具。 在测试和生产环境中记录硬件、软件、基础设施规范和配置,以确保一致性。 一些性能测试可能会在生产环境中进行,但是必须有严格的保护措施,以防止测试干扰生产操作。
确定将表示测试成功的限制、目标和阈值 主要的标准将直接来源于项目规范,但是测试人员应该给予充分授权以设置更广泛的测试和基准。
考虑使用范围的不同,然后创建适用于所有可行用例的测试场景。 相应地设计测试并概述应该收集的度量。
在执行性能测试之前配置测试环境。 准备好测试工具。
执行测试。 收集并监控结果。
整理和分析测试结果。 与项目团队分享发现结果。 通过解决发现的性能缺陷来优化应用程序。 重复测试,以确认每个问题都已被彻底消除。
创建尽可能接近生产生态系统的测试环境。 如果无法做到,测试结果可能无法准确地表示应用程序运行时的性能。
将性能测试环境与 UAT 环境分离。
确定能够最好地自动化性能测试计划的测试工具。
多次运行测试以获得应用程序性能的准确度量。 例如,如果您正在运行负载测试,请多次运行同一测试以确定结果是否一致,然后再将性能标记为可接受或不可接受。
不要在两次测试之间更改测试环境。
性能测试和性能工程是两个密切相关但又截然不同的术语。 性能测试是性能工程的子集,主要用于测量应用程序在特定负载下的当前性能。
为了满足快速交付应用程序的需求,现代软件团队需要一种超越传统性能测试的更先进方法,包括端到端集成性能工程。 性能工程是指为了达到某个清晰的性能目标而对软件进行的测试和调整。 性能工程出现在软件开发过程中较早的阶段,并从一开始就主动地防止性能问题。
由于性能测试旨在确定系统在不同工作负载下的运行情况,因此如果不使用自动测试工具,此类测试将很难执行。 测试工具在其性能、范围、复杂性和自动化方面各有不同。 了解 Micro Focus 测试解决方案如何将您的性能测试效率提升至下一高度。