更新时间:2024-07-16 GMT+08:00
分享

OPS03-03 进行性能压测

  • 风险等级

  • 关键策略

    性能压测主要通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。通常把性能测试、负载测试、压力测试等统称为性能压测。广义而言,是为保证系统运行后的性能可以满足用户需求,而开展的一系列测试组织工作。

    在应用系统上线发布之前,通过性能压测,测试应用系统能承受的最大并发、响应速度、以及稳定性是否满足设计要求。同时通过压测合理配置基础设施资源,提高资源利用率。性能压测主要目的是检查各项指标是否符合系统的业务要求,主要的测试分类包括:

    负载测试:是指在一定的软件、硬件及网络环境下,运行一种或多种业务,在不同虚拟用户数量的情况下,测试环境的性能指标是否在用户的要求范围内,以此确定系统所能承载的最大用户数、最大有效用户数以及不同用户数下系统响应时间及硬件设备或云服务的资源利用率,负载测试强调的是在一定的环境下系统能够达到的峰值指标。

    压力测试:指在一定的软件、硬件及网络环境下,模拟大量的虚拟用户向测试环境产生负载,使测试环境处于极限状态下并长时间连续运行,以测试硬件设备或云服务在高负载情况下是否能够稳定工作。压力测试强调在极端情况下系统的稳定性。

    容量测试:指在一定的软件、硬件及网络环境下,构造不同数量级别的测试数据及记录,运行一种或多种业务,在一定虚拟用户数量的情况下,获取不同数量级别的硬件设备或云服务性能指标,以确定业务系统的最佳容量和最大容量。

    并发测试:测试多个用户同时访问同一个应用、同一个模块或者数据记录时是否存在死锁或者其他性能问题,所以几乎所有的性能测试都会涉及一些并发测试。因为并发测试对时间的要求比较苛刻,通常并发用户的模拟都是借助于工具,采用多线程或多进程方式来模拟多个虚拟用户的并发性操作。

    配置测试:指在一定的软件、硬件及网络环境下,模拟一定数量的虚拟用户运行一种或多种业务,将测试结果作为基线数据,在系统调优或系统评测的过程中,通过运行相同的业务场景比较测试结果,确定调优的结果是否达到预期效果或者为系统的选择提供决策数据。

    在性能压测过程中,需要模拟或者还原现实业务场景进行测试,这就必须借助特定测试工具达到相应的要求。不同类别的性能压测工具适用场景与测试能力各不相同,有的基于静态与动态资源测试能力,有的具备加压与负载测试能力,有的针对端到端业务请求与响应具备计时与计量能力,有的针对平台网站具有Web应用、移动应用和API测试能力,所以性能压测工具是要依据业务测试场景来选择。

  • 相关云服务和工具

    参考华为云CodeArts PerfTest工具

相关文档