1.1.1什么是性能测试
l用LoadRunner测试系统的最大并发用户数。
l用LoadRunner测试系统8小时的最大业务吞吐量。
l用LoadRunner测试系统的稳定性与健壮性。
l用LoadRunner测试系统在数据达到100万条记录时的性能。
l用LoadRunner测试核心事务响应时间是否满足用户的需求。
狭义的性能测试主要用于描述常规的性能测试,是指通过模拟生产运行的业务压力或用户使用场景来测试系统的性能是否满足生产性能的要求。
广义的性能测试则是压力测试、负载测试、强度测试、并发(用户)测试、大数据量测试、配置测试、可靠性测试等和性能相关的测试统称。
压力测试:对系统不断施加压力的测试,是通过确定一个系统的瓶颈或不能接收用户请求的性能点,来获得系统能提供的最大服务级别的测试。压力测试的目的是发现在什么条件下系统的性能变得不能接受,并通过对应用程序施加越来越大的负载,直到发现应用程序性能下降的拐点。
负载测试:对系统不断地增加压力或增加一定压力下的持续时间,直到系统的一些性能指标达到极限、 压力测试侧重压力大小,而负载测试强调压力持续时间。
强度测试:主要是为了检查程序对异常情况的抵抗能力。总是迫使系统在异常的资源配置下运行。
并发测试:当测试多个用户并用时访问同一个应用程序,用一个模块或数据记录时是否存在死锁或其他性能问题,几乎所有的性能测试都会涉及并发测试。
大数据量测试:一种针对某些系统存储 传输 统计查询等业务进行大数据量的测试,另一种是与并发测试相结合的极限状态下的综合数据测试。
可靠性测试:在给系统加载一定业务压力的情况下,使系统运行一段时间,以此检测系统是否稳定。
1.1.2性能测试应用领域
系统的性能瓶颈定位:测试场景运行过程中监控系统资源、Web服务器资源等运行数据,与响应时间进行同步分析,可以在一定程度上进行性能瓶颈的分析与定位
系统的参数配置:通过性能测试可以测试系统在不同参数配置下的性能表现,进而找出令系统表现更优的系统配置参数,为应用系统投产提供最佳配置建议。
系统的验收测试:系统验收测试经常会验证一些预期的性能指标,或者验证系统中一些事务指标是否符合用户期望,这时就需要借助性能测试来完成验证工作。
系统容量规划:通过总结系统在不同硬件环境下的性能表现,可以为系统部署时提供非常好的参考。
产品评估/选型:通过性能测试,可以对产品的软硬件性能进行更全面的评估,选出更适合自己的产品类型。
1.1.3性能测试常见术语
性能测试常见的术语主要有并发、并发用户数量、请求响应时间、事务响应时间、吞吐量、吞吐率、TPS、点击率、资源利用率等
并发:一种是严格意义上的并发,即所有的用户在同一时刻做同一件事情或操作,这种操作一般针对同一类型的业务,另一种这种并发与狭义的并发的区别是尽管多个用户对系统发出了请求或进行了操作,但是这些请求或操作可以是相同的,也可以是不同的
并发用户数量:并发主要针对服务器而言,是否并发的关键是看用户的操作是否对服务器产生了影响。因此,并发用户数量的正确理解是,在同一时刻与服务器进行交互的在线用户数量。这些用户的最大特征是和服务器发生了交互,这种交互既可以是单向传送数据的,也可以是双向传送数据的。
请求响应时间:请求响应时间是指从客户端发出请求到得到响应的整个过程的时间。请求响应时间为“网络响应时间”和“应用程序与系统响应时间”之和,具体由7个部分组成,即(N1+N2+N3+N4)+(A1+A2+A3)。
事务响应时间:事务可能由一系列请求组成,事务的响应时间主要针对用户而言,属于宏观上的概念,是为了向用户说明业务响应时间而提出的
吞吐量:指在一次性能测试过程中网络上传输的数据量的总和。吞吐量/传输时间,就是吞吐率。
吞吐率:通常用来指单位时间内网络上传输的数据量,也可以指单位时间内处理的客户端请求数量。它是衡量网络性能的重要指标。
TPS(Transaction Per Second):每秒钟系统能够处理的交易或事务的数量。它是衡量系统处理能力的重要指标
点击率:每秒钟用户向Web服务器提交的HTTP请求数
资源利用率:资源利用率指的是对不同系统资源的使用程度。资源利用率是分析系统性能指标进而改善性能的主要依据,因此,它是Web性能测试工作的重点。资源利用率主要针对Web服务器、操作系统、数据库服务器、网络等,是测试和分析瓶颈的主要参数。在性能测试中,要根据需要采集具体的资源利用率参数来进行分析。