对于用户来说,一个系统好不好用,除了系统功能方面的因素外,最重要的是响应速度。对于系统管理者或者运维人员来说,还会关心其性能指标,比如这个软件系统最多能支持多少用户同时访问;在不同数量的用户访问时性能都是什么情况,最好的性能出现在多少数量的用户同时访问时;当性能达到什么样的值时需要扩充相应的硬件资源,如宽带、服务器等;哪些因素会成为制约性能提高的瓶颈。我们上述提到的问题都需要性能测试来发现并给出建议。
通常性能测试可以分为客户端的性能测试、网络性能测试以及服务器端的性能测试。
客户端的性能测试就是从客户端发起,探测系统的响应速度和并发支持
网络性能测试就是对网络带宽、网络延迟等方面进行性能分析,确定网络的负载能力和网络延迟的环节
服务器端的性能测试主要观察服务器的处理能力,比如CPU的利用率,内存使用率,I/O的效率等等
性能测试的方法主要可以分为负载测试、压力测试(强度测试)、疲劳测试、容量测试等。也有人将性能测试当作一种具体的测试方法,与负载测试和压力测试并列。
负载测试:目的是为了测试软件系统在不同的负载(比如不同的用户并发数)下软件系统的性能情况,进而判断软件系统的性能是否达到设计要求。负载测试的对象主要是软件系统的性能。
压力(强度)测试:测试硬件系统临界点,即系统在异常或极端情况下的处理情况,
疲劳测试:系统在正常运行的情况下持续运行一段时间,查看系统能否一如既往地正常处理。疲劳测试也是一项非常重要的测试,因为很多软件在短时间内可能运行正常,但是时间一长,由于内存泄露等因素会导致系统崩溃。
容量测试:找出在可接受的性能指标范围内系统最大处理的并发数
一般性能测试会混合执行负载测试、压力测试、容量测试、疲劳测试等
要做好性能测试,同样要做好需求分析
看系统的技术架构,即使用什么样的服务器,什么样的存储设备,什么样的网络,客户端使用的是什么机器等等
要明确哪些功能重要,容易形成性能瓶颈,当然,对于使用频次少或者占用资源比较少的功能点一般没有必要去做性能测试。
要清楚软件需求中对该系统的性能要求,这个就相当于测试预期,最终性能测试和调优的结果必须达到预期。
需求分析之后,需要做性能测试计划和方案,选择性能测试工具loadrunner,录制性能测试脚本并执行性能测试,提出性能缺陷并进行修复,最终形成性能测试报告。
LoadRunner工作原理
这是一款基于协议的性能测试工具,根据测试系统需求,选择合理协议来录制这各协议下发出的“信号”,然后它可以虚拟并发起回放“信号”,loadrunner通过模拟成千上万名用户实施并发负载,实时性能监控的系统行为和性能方式来确认和查找问题。
VuGen发生器:捕捉用户业务流,并最终将其录制成一个脚本
·选择相应的一种协议
·在客户端模拟用户使用过程中的业务流程,并录制脚本
·编辑脚本和设置Run-Time Settings项
·编辑脚本生成无错且可运行的脚本
控制器
·设计场景,包含手动场景设计和目标场景设计两种方式
·场景监控:可以实时监控脚本的运行情况。
负载发生器:模拟用户对服务器提交请求
一般,在性能测试过程中会将控制器和负载发生器分开,当使用多台负载发生器时,一定要保证负载均衡。
分析器:主要用于对测试结果进行分析。
以上是关于系统性能测试概述以及loadrunner工作原理的相关介绍,想要获取更多信息欢迎随时与我们进行联系。
