软件性能测试与LoadRunner实践教程.docx
文本预览下载声明
性能测试基本概念系统的性能是一个很大的概念,覆盖面非常的广泛,软件系统的性能包括:执行效率,资源占用,系统稳定性,安全行,兼容性,可靠性,可扩展性。性能测试是为描述测试对象与性能相关特征并对其进行评价而实施和执行的一类测试。负载测试负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足系统性能指标的前提下,系统所能够承受的最大负载量的测试。简而言之,负载测试是通过逐步加压的方式来确定系统的处理能力和能够承受的各种阀值。例如:通过逐步加压得到“响应时间不超10秒”、“服务器平均CPU利用率低于85%”等指标的阀值。压力测试压力测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态来获得系统能提供的最大服务级别的测试。简而言之,压力测试是逐步增加负载,使系统某些资源达到饱和甚至失效。吞吐量吞吐量(throughput)是指单位时间内处理的客户端请求数量,直接体现软件系统的性能承载能力。通常情况下,吞吐量用“请求数/秒”或“页面数/秒”来衡量。从业务角度来看,吞吐量也可以用“业务数/小时”、“业务数/天”、“访问人数/天”、“页面访问量/天”来衡量。从网络角度来看,还可以用“字节数/小时”、“字节数/天”等来衡量网络的流量。吞吐量是大型门户网站以及各种电子商务网站衡量自身负载能力的一个很重要的指标,一般吞吐量越大,系统单位时间内处理的数据越多,系统的负载能力就越强。吞吐量是衡量服务器承受能力的重要指标。在容量测试中,吞吐量是重点关注的指标,因为它能够说明系统的负载能力,而且在性能调试过程,吞吐量也具有非常重要的价值。例如,Empirix公司在报告中声称,在他们所发现的性能问题中,有80%是因为吞吐的限制而引起性能问题。显而易见,吞吐量指标在性能测试中占有重要地位。那么吞吐量会受到哪些因素影响,该指标和虚拟用户数、用户请求数等指标有何关系呢?吞吐量和很多因素有关,如服务器的硬件配置、网络的拓扑结构、网络传输介质、软件的技术架构等。此外,吞吐量和并发用户数之间存在一定的联系。通常在没有遇到性能瓶颈时,吞吐量可以采用以下公式计算。这里,F表示吞吐量:表示并发虚拟用户(concurrency virtual user)数,R表示每个VU发出的请求数量,T表示性能测试所用的时间。但如果遇到了性能瓶颈,则吞吐量和VU数量之间就不再符合上面这个公式的关系。响应时间响应时间是指用户从客户端发起一个请求开始,到客户端接收到服务器端返回结果的响应结束,结果信息展现在客户端整个过程所耗费的时间。从图1-1 中可以看到,页面的响应时间=网络传输时间+Web应用服务器处理延迟时间+数据库服务器处理延迟时间,这个响应时间可以分解为“网络传输时间”(N1+N2+N3+N4)和“应用延迟时间”(A1+A2+A3),而“应用延迟时间”又分解为“数据库处理延迟时间”(A2)和“Web应用服务器处理延迟时间”(A1+A3)。这里需要说明的是,上述响应时间考虑的主要是服务器处理响应时间,从严格意义上讲,响应时间还应该包括客户端处理部分的响应时间。例如,在服务器处理完请求后,通过网络传送给客户端,客户端还需要进行页面渲染、脚本执行、数据展现等方面的工作,这部分内容的处理时间则为花费在客户端的处理延迟时间。关于浏览器客户端的性能测试方面的有很多工具,如HttpWatch、FireBug、YSlow等。这些工具将在另外一本《精通软件性能测试与Loadrunner最佳实践》书中讲解。如果将这部分时间也考虑进去的话,响应时间=响应传输时间+Web应用服务器处理延迟时间+数据库服务器处理延迟时间+客户端处理延迟时间。通常我们最关心的是平均响应时间,它是指系统稳定运行时间段内,同一业务的平均响应时间。在不特殊说明的情况下,一般而言,响应时间是指平均响应时间。当然,如果分析结果需要,也可以考察最小和最大的响应时间信息。一般情况下,复杂业务响应时间、简单业务响应时间、特殊业务响应时间均指定明确的标准值,以对后续结果进行比对,达到标准值即为通过,否则为不通过。点击数点击数是衡量Web服务器处理能力的一个重要指标。它的统计是根据客户端向Web服务器发了多少次HTTP请求计算的。这里需要说明的是,点击数不是通常一般人认为的访问一个页面就是1次点击,点击数是该页面包含的元素(如图片、链接、框架等)向Web服务器发出的请求次数。通常也用每秒点击次数(This Per Second)指标来衡量Web服务器的处理能力。性能计数器性能计数器(Counter)是描述相关服务器(如数据库服务器、应用服务器等)或操作系统、中间件等性能的一些数据指标。LoadRunner 功能点说明文本检查设置【重要提示】检查点设置完成后,要保证【Run-time-Setti
显示全部