查看原文
其他

[性能测试]性能测试基础

苦叶子 开源优测 2022-11-13

点击上方蓝字“开源优测”一起玩耍

概述

        在软件测试行业中,性能测试是确保软件质量的一项关键措施。随着IT技术的发展,性能测试显得越发的重要,各企业的需要也越来越大,同样的对其技术的要求也高。

为什么要做性能测试

性能测试的主要目的是向项目干系人提供关于系统的可伸缩性、速度和稳定性方面的信息,这将有助于项目干系人在推出产品之前对系统进一步进行优化改进。

如果一个系统未经性能测试就上线,有可能会出现许多的错误,包括低速、不同操作系统的不一致、崩溃等等异常。

随着用户对产品体验的进一步要求和市场竞争进一步加剧,没有一个好的性能表现,难以在市场竞争中存活,因此性能测试非常的重要,也是为什么需要进行性能测试的根本原因。


性能测试类型

  • 负载测试
    检查系统在预期的负载下执行的能力,该类型测试将确定性能可能的瓶颈。

  • 压力测试
    检查系统在极端工作负载下的运行状态,进一步确定系统能力。

  • 峰值测试
    检查系统在负载突然增加或减少的情况下,确定系统的能力。

  • 容量测试
    检查系统数据库在不同容量时,系统的性能能力。

  • 可伸缩性测试
    检查系统的可伸缩性或处理增加负载的能力


常见的性能瓶颈

  • 加载时间过长
    系统启动的时间过程,系统的启动时间应该尽可能的小,通常系统启动时间保持在几秒以内是最佳的。

  • 响应时间过长
    从用户输入数据提交到服务器返回的时间段,称为响应时间。如果响应时间过长,会导致用户体验很差。

  • 可伸缩性差
    当系统不能处理预期用户或事务数量时,就会出现该情况。

  • 其他瓶颈
    系统在运行中的障碍称为瓶颈,主要由编码错误或算法效率不高或线程机制有问题等因素造成,当然硬件也是一个可能的因素。


需要关注的指标类型

        在性能测试是,我们通常需要关注以下几大类型的指标数据:

  • CPU

  • 内存

  • 网络

  • IO

  • 操作系统限制

  • JVM

  • 线程(锁)

上述指标不仅仅要关注服务端,同样也需要关注前端相应的技术指标。


性能测试工具

        一些常用的性能测试工具,一般情况下笔者推荐jmeter或Gatling,理由就是没有理由。

  • JMeter

  • Gatling

  • LoadRunner

  • WebLoad

  • OpenSTA

  • httperf

  • LoadING Pro

  • Appvance

  • NeoLoad

  • Loadster

  • WAPT

  • LoadComplete

  • Testing Anywhere

  • LoadStorm

  • CloudTest


小结

        本文简单的介绍了下性能测试的基本知识,让未接触过性能测试的朋友有个基本的了解。

 

开源优测

分享软件测试开源技术、经验、方案的首发平台

长按二维码/微信扫描 关注开源优测

QQ群:260407012

苦叶子私人微信:liyimin1912

有问题,可留言或加好友进微信群

苦叶子原创文章首发平台


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存