首页 > 编程知识 正文

性能测试的过程,性能测试的目标

时间:2023-05-06 12:45:09 阅读:57319 作者:602

文章目录

前言

性能测试的目的

1 .系统能力的评估

2 .识别体系中的弱点

3 .系统调整

4 .验证稳定性(可靠性) reliability )

负载测试) )。

压力测试(Stress Testing )

客户端性能测试

并发性能测试

网络端性能测试

服务端性能测试

前言:性能测试使用自动化测试工具模拟各种正常、峰值和异常负载条件,并测试系统的各项性能指标。

负荷测试和压力测试都是性能测试,可以将两者结合进行。

负载测试目标是检查系统在各种工作负载下的性能,并测试系统性能指标在负载逐渐增加时的变化。

压力测试是一项通过确定系统瓶颈或不可接受的性能点来获得系统能够提供的最大服务级别的测试

性能测试在软件质量保证中起着重要的作用,测试内容丰富。

中国软件评估中心将性能测试归纳为以下三个方面:

在客户端上测试性能

测试网络上的性能

应用于服务器端性能测试。

通常三个有效合理的组合可以实现系统性能的全面分析和瓶颈预测。

性能测试的目的

目的是验证软件系统能否达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,优化软件,最后达到优化系统的目的。

这方面包括:

1 .可以评估系统能力测试获得的负荷和响应时间数据,验证规划模型的能力,有助于决策

2 .可以将识别体系中弱点控制的负荷增加到极端水平,突破它,修复体系瓶颈或薄弱环节

3 .系统调试要反复运行测试,验证调试系统活动取得预期结果,以改善性能。

检测软件问题。 长时间的测试执行会导致程序的产生

内存泄露引起的失败,揭示程序中的隐含的问题或冲突。

4.验证稳定性(resilience)可靠性(reliability)

        在一个生产负荷下执行测试一定的时间是评估系统稳定性和可靠性是否满足要求的唯一方法。

负载测试(Load Testing)

        负载测试是确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统组成部分的相应输出项,例如通过量、响应时间、CPU负载、内存使用等来决定系统的性能。负载测试是一个分析软件应用程序和支撑架构、模拟真实环境的使用,从而来确定能够接收的性能过程。

        负载测试会帮助确定系统是否还能够处理期望的用户负载,以预测系统的未来性能;通过模拟成百上千个用户,重复执行和运行测试,可以确认性能瓶颈并优化和调整应用,目的在于寻找到瓶颈问题。

        测试的基本策略是自动负载测试,通过在一台或几台PC机上模拟成百或上千的虚拟用户同时执行业务的情景,对应用程序进行测试,同时记录下每一事务处理的时间、中间件服务器峰值数据、数据库状态等。通过可重复的、真实的测试能够彻底地度量应用的可扩展性和性能,确定问题所在以及优化系统性能。预先知道了系统的承受力,就为最终用户规划整个运行环境的配置提供了有力的依据。

压力测试(Stress Testing)

        压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。

客户端性能测试

        应用在客户端性能测试的目的是考察客户端应用的性能,测试的入口是客户端。它主要包括并发性能测试、疲劳强度测试、大数据量测试和速度测试等,其中并发性能测试是重点。

Windows PyCharm.exe

Tencent PerfDog 性能狗

并发性能测试

        并发性能测试的过程是一个负载测试和压力测试的过程,即逐渐增加负载,直到系统的瓶颈或者不能接收的性能点,通过综合分析交易执行指标和资源监控指标来确定系统并发性能的过程。

        并发性能测试的目的主要体现在三个方面:

        1、以真实的业务为依据,选择有代表性的、关键的业务操作设计测试案例,以评价系统的当前性能;

        2、当扩展应用程序的功能或者新的应用程序将要被部署时,负载测试会帮助确定系统是否还能够处理期望的用户负载,以预测系统的未来性能;

        3、通过模拟成百上千个用户,重复执行和运行测试,可以确认性能瓶颈并优化和调整应用,目的在于寻找到瓶颈问题。

网络端性能测试

        应用在网络上性能的测试重点是利用成熟先进的自动化技术进行网络应用性能监控、网络应用性能分析和网络预测。

  网络应用性能分析

        网络应用性能分析的目的是准确展示网络带宽、延迟、负载和TCP端口的变化是如何影响用户的响应时间的。

  网络应用性能监控

        网络应用性能监控以及网络资源管理对系统的正常稳定运行是非常关键的。利用网络应用性能监控工具。

         通俗地讲,它主要用来分析关键应用程序的性能,定位问题的根源是在客户端、服务器、应用程序还是网络。在大多数情况下用户较关心的问题还有哪些应用程序占用大量带宽,哪些用户产生了最大的网络流量        

  网络预测

        考虑到系统未来发展的扩展性,预测网络流量的变化、网络结构的变化对用户系统的影响非常重要。根据规划数据进行预测并及时提供网络性能预测数据。

        从网络管理软件获取网络拓扑结构、从现有的流量监控软件获取流量信息(若没有这类软件可人工生成流量数据),这样可以得到现有网络的基本结构。在基本结构的基础上,可根据网络结构的变化、网络流量的变化生成报告和图表,说明这些变化是如何影响网络性能的。PREDICTOR提供如下信息:根据预测的结果帮助用户及时升级网络,避免因关键设备超过利用阀值导致系统性能下降;哪个网络设备需要升级,这样可减少网络延迟、避免网络瓶颈;根据预测的结果避免不必要的网络升级。

服务端性能测试

        对于应用在服务器上性能的测试,可以采用工具监控,也可以使用系统本身的监控命令,例如Tuxedo中可以使用Top命令监控资源使用情况。实施测试的目的是实现服务器设备、服务器操作系统、数据库系统、应用在服务器上性能的全面监控。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。