版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件性能测试总结第一章软件性能概述1.1软件性能基础1.1.1软件性能的概念软件性能是与软件功能相对应的一种非常重要的非功能特性,表明了软件系统对时间及时性与资源经济性的要求。对于一个软件系统,运行时执行速度越快、占用系统存储资源及其他资源越少,则软件性能越好。软件性能与软件功能是软件能力的不同体现,以一个人的工作能力来比喻,“功能”是某个人能够做的事情,“性能”指此人完成这件事情的效率。在功能相同的情况下,性能是衡量事情完成效果的一个重要因素。1.1.2不同角色对软件性能的理解1)从系统用户角度看软件性能系统用户指实际使用系统功能的人员。系统用户看到的软件性能就是软件的响应时间,即当用户在软
2、件中执行一个功能操作后,到软件把本次操作的结果完全展现给用户所消耗的时间。系统响应时间的影响因素有:功能的粒度、客户端网络情况、服务器当前忙闲情况等。从系统用户角度看,软件响应时间越短,系统性能越好。2)从系统运维人员角度看软件性能系统运维人员指负责软件系统运行维护的工作人员。运维人员在关注系统响应时间的同时,还需要关注系统的资源利用率、系统最大容量、系统访问量变化趋势、数据量增长幅度、系统扩展能力等,并在此基础上制定合理的系统维护计划,以保障系统能够为用户提供稳定可靠的持续服务。运维人员关注的性能问题:软件性能描述运维人员关心的问题服务器的资源使用情况合理资源利用率吗应用服务器和数据库服务器
3、资源利用率的资源使用状况合理吗系统容量系统可扩展性系统容量系统可扩展性系统可扩展性系统是否能够实现扩展系统最多能支持多少用户的访问系统最大的业务处理量是多少系统性能可能的瓶颈在哪里更换哪些设备能够提高系统性能系统能否支持7X24小时的业系统稳定性务访问3)从系统开发人员角度看软件性能系统开发人员指系统软件的设计和开发人员。问题所属层次系统架构数据库设计代码代码设计与代码开发人员关注的性能问题:开发人员关心的问题架构设计是否合理数据库设计是否存在问题代码是否存在性能方面的问题系统中是否有不合理的内存使用方式系统中是否存在不合理的线程同步方式的资源竞争1.1.3软件性能的重要性保障软件系统的性能具
4、有十分重要的意义,具体体现在以下方面:(1)系统性能越好,执行速度越快,用户使用系统的体验就越好(2)系统性能越好,用户的等待时间越少,有利于提高软件操作效率。(3)系统性能越好,处理能力越大,单位时间处理业务量越大。(4)系统性能越好,在大量用户访问系统时系统稳定性越好,能够提供持续服务。(5)系统性能扩展性越好,越容易提升系统的处理能力,以适应更多的访问需求。能意味着重大的销售损失或用户流失,保持系统系统性能对于软件系统的运营企业具有非常重要性能的的意义,系统下降可良好的系能对于提高用户体验、提升站点声誉、提升客户忠诚度、增加系统收入等都具有重要作用。1.2常用性能指标121响应时间响应时
5、间指用户感受到的软件系统为其服务所耗费的时间。一般情况下,需要定义三种情况下的系统的响应时间:(1)闲时响应时间:指系统中访问用户数量较少的情况下,用户访问系统的响应时间,也可理解为在不受其他用户干扰的情况下,系统应该具有的性能表现。(2)忙时响应时间:指在系统处理正常访问用户量的情况下,用户访问系统的响应时间。该指标定义了系统在正常访问状态下应该具有的响应时间要求,体现了系统在正常访问状态下的性能表现。(3)峰时响应时间:指在系统具有大量并发用户的情况下,用户访问系统的响应时间。该指标定义了系统在承载最大并发用户情况下应该具有的响应时间要求,体现了系统压力负荷最大情况下的性能表现,也可以理解
6、为系统最大响应时间。1.2.2并发用户并发用户数指系统能够同时处理的用户请求的数目,也可以理解为同时向系统提交请求的用户数目。注册用户数指系统中全部注册用户的数量;在线用户数指在相同时间段内登录了系统,并在系统中进行操作的用户数量。平均并发用户数:指在系统正常访问量情况下的并发用户数。最大并发用户数:指在峰值访问情况下的并发用户数。如何判断是否达到峰值访问情况:(1) 系统响应时间达到了峰值响应时间,即系统的响应时间已经达到了用户能够接收的上限。(2) 系统服务器资源利用率已经达到了上限,即服务器的CPU利用率、内存利用率等指标已经达到了需求规定的上限。(3) 系统请求成功率,即成功请求数/总
7、请求数。当系统压力过大时,某些用户请求就会执行失败,如果失败率过高,就说明系统已经达到了处理能力的上限,所以可以根据成功率来判断是否已经达到了最大并发用户数。平均并发用户数仅反映了系统某个时刻的用户访问情况,并不反映系统的性能情况;而最大并发用户数反映了系统的处理能力,往往作为一项重要的性能指标在需求分析时进行定义。1.2.3吞吐量吞吐量指单位时间内系统处理的客户请求数量,体现系统的整体处理能力。系统吞吐量越大,说明系统性能越好。衡量吞吐量的常用指标内包括:RPS:请求数/秒,描述系统每秒能够处理的最大请求数量。PPS:页面数/秒,描述系统每秒能够现实的页面数量。PV:页面数/天,描述系统每天
8、总的PageView数量。TPS:事务/秒,描述系统每秒能够处理的事务数量。QPS:査询/秒,描述系统每秒能够处理的査询请求数量。1.2.4服务器性能计数器服务器性能计数器指服务器或操作系统性能的一些数据指标,在性能测试中发挥着监控和分析的关键作用常用的操作系统性能计数器包括SystemLoad、进程与线程数、使用内存数、CPU使用率、磁盘I/O、网络I/O等。资源利用率反映的是在一段时间内服务器资源平均被占用的情况,能够更加直观的反映系统当前的运行情况,例如CPU利用率如果达到80%,就说明当前CPU基本已经耗尽,系统处于满载状态。所以在进行性能需求分析时,往往通过资源利用率指标来定义服务器
9、性能要求。第2章软件性能测试基础2.1 软件性能测试的概念定义:狭义的软件性能测试指为验证软件性能指标、评估系统服务能力、推荐系统软硬件配置、完成系统性能优化等而开展的测试活动;广义的软件性能测试是指测试过程中需要相关性能测试方法配合完成的系统测试活动,包括可靠性测试、可恢复性测试、稳定性测试、兼容性测试、可扩展性测试等。2.2 软件性能测试的目标目标分为4个方面:能力验证、缺陷发现、能力规划、性能优化1、能力验证分为3个层面:验证性能指标与需求的符合情况软件系统性能测试最主要的目标:验证软件性能是否符合软件需求文档中的性能指标要求,是否符合预定的设计目标。获得系统服务能力评价系统可靠性6个质
10、量特性:功能性、可靠性、易用性、效率性、维护性、可移植性可靠性一般用平均无故障时间(MTTF)来度量,三个子特性:成熟性、容错性、可恢复性。2、缺陷发现缺陷发现性能测试的主要目的是:通过性能测试的手段来发现系统中存在的缺陷,并不需要验证性能指标是否满足需求的要求。3、能力规划特点:1、规划能力是一种探索新的测试2、配置规划可用于了解系统的性能以及获得扩展性能的方法。4、性能优化性能条有的前提:进行性能瓶颈定位特点:1、确定基准环境、基准负载和基准性能指标2、调整系统运行环境和实现方法、执行测试2.3常用性能测试方法性能测试名称基准测试-压力测试定义说明通过设计科学的测试方法、测试工具和测试系统
11、,实现对一类测试对象的某种性能指标进行定量的和可对比的测试。主要目的是检验系统性能与相关标准的符合程度通过对软件系统不断施加压力,识别系负载测试并发测试疲劳测试数据量测试配置测试刀bl工廿匕Z711UTTSI7klUJ4X-Xv服务级别的测试活动。主要目的是检查系统处于压力情况下应用的表现。通过在被测系统中不断增加压力,直到达到性能指标极限要求。主要目的是找到特定环境下系统处理能力的极限。并发测试主要指当测试多用户并发访问同一个应用、模块、数据时是否产生隐藏的并发问题,如内存泄露、线程锁、资源争用问题。主要目的并非为了获得性能指标,而是为了发现并发引起的问题。通过让软件系统在一定访问量情况下长
12、时间运行,以检验系统性能在多长时间后会出现明显下降。主要目的是验证系统运行的可靠性。通过让软件在不同数据量情况下运行,以检验系统性能在各种数据量情况下的表现。主要目的是找到支持系统正常工作的数据量极限。通过对被测系统的软/硬件环境的调整厂了解各种不同环境对系统性能影响的程基准测试三大原则:可测量、可重复、可对比度,从而找到系统各项资源的最优分配原则。主要目的是了解各种不同因素对系统性能影响的程度,从而判断出最值得进行的调优操作。2.4软件性能测试范I(1) 服务器性能测试(2) 网络性能测试(3) 客户端性能测试2.5性能测试面临的问题主要包括:1、没有明确的性能指标需求2、不切实际的性能指标
13、要求3、在开发环境下做性能测试4、走形式地进行性能测试5、只测试、不分析6、只测试、不优化7、性能测试缺乏方法论的指导8、缺乏高水平的性能测试人才第三章性能测试的组织管理3.1软件性能测试过程模型非经典的软件开发模型:瀑布模型、螺旋模型、增量模型、喷泉模型、原型模型、敏捷开发软件测试相关模型:V模型、W模型、H模型、X模型3.1.1试过Segue性能测Segue性能测试模型3.1.2HP性能测试过程模型制定测试设计性能录制VU创建测试执行性能结果分HP性能测试过程模型3.1.3 PTGM(PerformanceTestGeneralModel)性能测试过程模型3.1.4 APTM(AgileP
14、erformanceTestModel)敏捷性能测试过程模型识别性能设置环境分析测试性能测试支持性能基准测试支持3.1.5 SPTM(SystemPerformanceTestModel)系统性能测试过程模型1. 组建测试团队1)组织团队成员2)安排工作分工3)进行技能培训2. 指定测试计划1)明确测试范围2)制定进度计划3)制定成本计划4)制定环境计划5)测试工具计划6)测试风险分析3. 设计测试方案1)明确性能需求2)设计性能测试用例3)设计脚本录制方案4)设计测试场景5)设计测试结果指标4. 搭建测试环境1)搭建硬件环境2)搭建软件环境3)搭建测试环境4)准备数据环境5. 执行性能测试1
15、)脚本录制与开发2)场景设置3)测试执行4)测试监控6. 分析测试结果1)测试结果分析2)性能瓶颈分析3)制定优化方案4)性能测试总结性能测试支持环境:评审、沟通、管理、支持3.2组件性能测试团队1组织团队成员2安排工作分工3进行技能培训3.2.1组织团队成员角色测试负责人职责性能测试设计人员1和用户等项目干系人交互,确保测试的外部环境2. 制定测试计划3. 监控测试进度4. 发现和处理测试中的风险1. 理解性能需求2. 设计性能测试流程3. 设计性能测试用例技能1计划执行和监控能力2. 风险意识能力3. 协调沟通能力和灵活变通的能力1业务把握能力2. 性能需求分析和识别能力性能测试配置人员W
16、试脚本开发人员性能测试执行人员能5. 设计测试场景1. 部署性能测试环境2. 维护性能测试文档3. 系统版本管理1. 实现已设计的性能场景2. VU脚本的录制、开发、调试3确定测试时需要监控的性能指标、性能计数器1. 使用工具执行测试场景2. 根据监控要求记录测试结果、记录性能3. 执行性能测试用例1. 配置平台使用能力2. 版本管理能力3. 环境部署能力1、脚本编码和调试能力2、理解性能指标和性能计数器1. 搭建测试环境的能力2. 测试工具使用(执行)的能力3. 性能指标和性能计数器获取和记录的能力性能测试分析人员1. 根据测试结果、性能指标的数值、性能计数器值进行分析支持较色(系统)支持较
17、色(络)支持角色2. 根据性能规划,分析出性能的瓶颈或是给出优化建议系统支持,协助解决测试工程师无解决的系统问题网络方面的支持,协助测试工程师解决网络方面的问题,必要时为测试分析角色提供网络方面的分析支持数据库方面的支持,必要时为测试1. 掌握性能测试工具的使用方法2. 掌握应用系统性能领域相关知识,理解所采用的架构3. 熟悉常用的性能分析方法4. 具有一定的编码经验处理系统问题的能力和技能。最好有专职的系统管理员担任这个角色网络方面的能力和技能,最好由专职的网络管理人员担任网络方面的能力和技能,最好由专职(数据库)分析角色提供数据库方面的支持DBA担任支持角色(中间件)中间件平台方面的支持,
18、在必要时为测试分析较色提供中间件方面的支持深入了解中间件产品的特点和配置方案,可以由专职的中间件专家担任第六章LoadRunner基础6.2 LoadRunner功能结构6.2.1 LoadRunner工具组成LoadRunner功能非常复杂,核心模块为VirtualUserGenerator、Controller、Analysis、LoadGenerator、Proxy五部分。虚拟用户脚本生成器VirtualUserGenerator,简称VuGen,是用来录制虚拟用户脚本的工具支持大量的通信协议,支持自动化脚本录制和二次开发,为系统性能测试提供寻虚拟脚本支持。负载生成器LoadGenera
19、tor,简称LG,负责将VuGen脚本复制成大量虚拟用户对系统生成负载,在性能测试中,用来模拟大量用户并发访问系统。用户代理Proxy,是客户端和服务器的中介,负责协调不同负载机上的虚拟用户,产生步调一致的虚拟用户。测试控制器Controller,负责对整个测试的过程进行设置,制定测试过程中的VU脚本、并发用户数、加压方式、执行周期、监控参数等,同时提供测试过程中的监控功能。结果分析器Analysis,负责对测试中手机的相关数据进行整理和分析,形成各种图形表,辅助性能测试分析人员完成测试结果的分析任务。6.2.1 LoadRunner工作controller是执行负载测试管理和监控的中心,在这
20、里定制具体的性能测试方案,执行性能测试,收集测试数据,监控测试指标。LG是虚拟多用户并发访问被测系统的组件,虚拟多用户并发访问系统的前提是已经具备了虚拟用户的脚本,Vugen是录制和编辑虚拟用户脚本的工具,录制好的脚本是不同语言表达的文本文件,在LG执行时,被解析和执行,脚本录制和回访是在Proxy支持下完成的。Controller中的实时监控工具将测试过程中收集到的客户机、服务器和网络性能指标数据显示在监控页面上,便于测试人员对系统表现进行随时掌握。Analysis在测试完成后,对测试过程中收集到的各种性能数据进行计算、汇总和处理,生成各种图标和报告,为系统性能测试结果分析提供支持。6.3
21、LR关键概念631虚拟用户虚拟用户(virtualuser,简称Vuser)指性能测试过程中执行VU脚本以模拟虚拟真实用户对系统访问的执行实体。一台测试机上只能有一个真实用户执行系统功能,但在loadrunner中,可以运行多个Vuser,很方便模拟多用户对系统的并发访问。6.3.2 VU脚本VU脚本(script)记录了用户执行系统功能的操作过程,是Vuser执行的对象。LoadRunner还可以通过参数化、关联等手段对VU脚本进行二次开发,提高脚本的灵活性。6.3.3场景场景(scenario)是一次性能测试执行内容的定义,用来模拟虚拟用户是如何产生压力的。场景中包含所有执行的脚本、虚拟用
22、户、负载生成器、运行过程配置、实时监控五方面内容。在定义场景时,包含手工场景和面向目标场景两种设置方式。6.3.4事务事务(transaction)提供一种端到端的测量方法,用于测量一个业务流程中执行一个或多个步骤所花费的时间。事务可以理解成一个计时单位,LoadRunner在运行过程中,一旦发现事务的开始标志,就开始计时,一旦发现事物的结束标志则测试结束计时,这个过程中得到的时间即为一个事务时间。6.3.5检查点检查点(checkpoint)提供了一种结果正确性验证的机制,保证了测试工具对执行通过判断的准确性。LoadRunner的VuGen组件允许插入文本检查点和图形检查点。&3.
23、6思考时间思考时间(thinktime)提供了一种让VU脚本暂停执行(等待一段时间)的机制,用来模拟实际用户在执行不同操作之间的等待时间,以便更加真实的反应用户访问系统的行为规律。&3.7集合点集合点(rendezvous)提供一种用户并发访问机制,用来模拟多用户对系统的并发访问。在Vuser需要执行脚本中插入集合点,配置多个Vuser同时执行操作,当某个Vuser到达集合点时,将进行等待,知道参与该集合的全部Vuser都到达或者已经指定数量的Vuser到达后,同时释放Vuser,让它们同时开始下一任务的执行,从而模拟多用户并发访问系统。第七章脚本的录制与开发课题背景:使用LoadRu
24、nner对系统进行并发负载测试时需要依赖虚拟用户脚本,虚拟用户脚本的录制需要基于相应的通信协议。7.1-最常用的几种LoadRunner支持通信协议1. HTTP协议超文本传输协议(HTTP,H压迫而textTransferProtocol)是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过互联网传达万维网文档的数据传送协议。一般在测试B/S架构应用系统时,需要选择这个协议。2. FTP协议FTP是TCP/IP协议组中的协议之一,是英文FileTransferProtocol的缩写。该协议是Internet文件传送的基础,它是由一系列规格说明文档组成,目标是提高文件的共享性,提高非直
25、接使用远程计算机,使存储介质对用户透明和可靠高效的传送数据。如果测试的系统是一个FTP服务器时,可以选择该协议进行脚本的录制。3.Socket协议Socket通常也称为“套接字”,是一般网络软件的不同实体之间进行通信的一种协议。我们选择协议时,只有在其他协议不合适,或实在不清楚选择何种协议时,才会选择Socket协议。4. WebService协议WebService是一种面向服务体系架构的实现技术,提供了服务描述、发布、提供、管理等一些协议。Web服务体系使用一系列标准和协议来实现相关的功能。使用WSDL来描述系统,使用UDDI来发布、查找服务,使用SOAP来调用服务。依据WebServic
26、e规范实施的应用之间,无论它们所使用的语言、平台或内部协议是什么,都可以相互交换数据。如果被测试功能是通过WebService方式提供,那么在录制脚本的时候可以选择WebService协议。5. RTE协议RTE协议是对一些遗留系统进行测试时进行终端仿真时使用的协议。终端仿真就是使用一个计算机终端模仿另一个计算机终端。通常被模仿的终端是较早的型号,以便于用户最初写给该终端进行通信的程序了。7.2通信协议的选择方法通过询问开发人员了解被测试系统所使用的协议,通常这是最简单也最直接的方法。通过概要或详细设计手册获知所使用的协议。通过协议分析工具捕包分析,然后确定被测试对象所使用的协议。通过以往测试
27、经验确定被测试对象所使用的协议,这种方法确定协议有一定的不确定性使用LoadRunner的协议分析功能,试着录制一下脚本,然后这个功能会自动帮助用户分析应该使用的协议,具有一定的可信度。LoadRunner录制脚本1.基本录制流程2. 录制选项在LoadRunner中有两种脚本录制模式:HTML-basedscript和URL-basedscript。©.HTML-basedscript(基于HTML的脚本)录制模式指在脚本中采用HTML页面形式来表示,为每个用户操作生成单独的步骤,这种脚本更容易理解和维护,一般使用HTML录制模式。.URL-basedscript(基于URL的脚本
28、)可以录下通过浏览器对服务器所作的所有请求和资源获取,它自动将每一步的HTTP资源录制为URL_steps(通过Web_url函数进行处理)。URL-based方式录制的脚本不太直观,阅读不便。3. 选择录制方式的参考方案如果应用是Web应用,首先是HTML-based录制模式。如果应用是使用HTTP协议的非Web应用,则首选URL_based录制模式。如果Web应用中使用了Javaapplet程序,且applet程序与服务器之间存在通信,则选用URL-based录制模式。7.4脚本开发知识1. 在LoadRunner的脚本中,通常含有如下三种函数:(1)VuGen通用函数。一般以lr开头。(
29、2)协议相关函数。不同类型的Vuser的函数一般以本协议类型开头。HTTP的协议函数还包括web_list、web_link等。(3)语言相关函数。2. 通用的VuGen函数(1)事务与事务控制函数如:lr_get_transaction_duration:获取事务的持续时间(按事务名称)lr_get_transaction_think_time:获取事务思考时间(按事务名称)(2)命令行分析函数如:lr_get_attrib_double:检索脚本命令行中使用的double类型变量。lr_get_attrib_long:检索命令行中使用的long类型变量。lr_get_attrib_stri
30、ng:检索命令行中使用的字符串。(3)系统信息函数用来得到VuGen的系统信息Lr_user_data_point:记录用户定义的数据采集点。Lr_get_host_name:返回执行Vuser脚本的主机名。Lr_get_master_host_name:返回运行Controller的计算机名。(4)字符串函数如:lr_save_datetime:把当前日期和时间保存到一个参数中。lr_save_int:把一个整数保存为参数。lr_save_var:把字符串的一部分内容保存为参数。(5)消息函数如:lr_output_message:将消息发送到输出窗口。lr_message:将消息发送到Vu
31、ser日志和输出窗口。(6)运行时函数如:lr_think_time:暂停脚本的执行,模拟思考时间,思考时间用完后,继续执行。lr_rendezvous:在Vuser脚本中设置集合点。脚本注释LoadRunner提供了两种脚本注释方法:(1)单行注释“/”;(2)块注释。“/*”,“*/”7.5.检查点相关设置1. 检查点分类(1) 文本检查点文本检查点函数是通过Web_reg_find()来实现的,Web_reg_find()是一个注册型函数,注册函数一定要写在请求前,所以该函数一定出现在检查文本之前。文本检查点的两种形式:代码一:web_reg_find(“Text=”,LAST);代码二
32、:web_reg_find(“Text=”,LAST);If()lr_output_message(“");elselr_output_message(“");(2) 自动检查点按F4|ContentCheck或Run-timesettings|ContentCheck(3) 图片检查点Web_image_check(“函数标题”,“ALT=图片说明”,“LAST”)检查点的设置技巧:检查点可以是常量,也可以是变量;检查点可以是文本、图像文件,也可以是数据库记录等。2. 事务设置(1) .事务的开始函数是lr_start_transaction(),选择新事务起点,鼠标右键
33、|Insert|startTransaction(2) .事务的开始函数是lr_end_transaction(),选择新事务结束点,鼠标右键|Insert|EndTransaction(3) 事务的状态LoadRunner_PASS事务是以PASS状态通过的,该事务做了正确的事情。LoadRunner_FAIL事务是以FAIL状态通过的,该事务做失败的事情。LoadRunner_AUTO事务的状态是由系统判断的,结果为PASS/FAIL/STOP。3. 参数化参数化包含以下两个任务:(1)在脚本中用参数取代常量值;(2)设置参数的属性以及数据源。4. 关联设置。关联主要有手动关联和自动关联。
34、手动关联中,关联函数web_reg_save_param是一个注册型函数。5. 集合点设置集合点通过在脚本中插入lr_rendezvous()函数实现。集合点要放在开始事务之前。集合点有三种策略:当百分之多少的用户到达集合点时脚本继续;当百分之多少的运行用户到达集合点时脚本继续多少个用户到达集合点时脚本继续。7.6日志对脚本录制起关键作用的三个日志执行日志(ExecutionLog):脚本运行时的输出都记录在这个日志里黑色:标准输出信息、红色:标准错误信息绿色:用引号括起来的文字字符串蓝色:事务信息(开始、结束、状态和持续时间)录制日志(RecordingLog)产生日志(Generation
35、Log)第八章场景管8.1场景概念&1.1场景概念场景主要是用来模拟真实用户向被测系统产生压力,是一种用来模拟大量用户操作事物技术手段。通过配置和执行场景向服务器产生负载,验证系统各项性能指标是否达到用户要求,而Controller可以帮助用户对场景的设计、执行及监控进行管理。1设计场景设计场景需要设置以下内容:(1)选择场景类型(2)设置负载生产器(3)配置用户组(4)配置压力设置(5)配置运行设置(6)IP虚拟(7)SLA2场景运行和监控需要关注你以下内容:(1)执行场景(2)负载生成监控(3)被负载系统监控场景报告8.2Controller简介Controller中主要有两个主要
36、的工作视图:Design视图和Runs视图。手动场景模式该界面主要包含三个主要的工作区域:1Design视图(1) ScenarioScripts:场景脚本设置区域。主要负责对场景执行过程的虚拟用户脚本、负载发生器等进行设置。(2) ScenarioSchedule:场景计划设置区域。主要负责设置测试加压方式以准确模拟真实用户的行为。(3) ServicelevelAgreement:服务水平协议设置区域。设计负载测试场景是,可以为性能指标定义目标值或服务水平协议。面向目标场景模式该界面主要包含三个主要的工作区域:Design视图(1) ScenarioScripts:场景脚本设置区域。主要负
37、责对场景执行过程的虚拟用户脚本进行设置。(2) ScenarioSchedule:场景计划设置区域。主要负责设置场景目标。(3) ServicelevelAgreement:服务水平协议设置区域。设计负载测试场景是,可以为性能指标定义目标值或服务水平协议。2Run视图Run视图是Controller中运行视图,包含5个主要区域(1) ScenarioGroup:场景组区域。位于窗口的左上角,可以查看场景组内Vuser的状态。使用该窗口右侧的按钮可以启动,停止和重置场景,查看各个Vuser的状态,通过手动添加更多Vuser可以增加场景运行期间应用程序的负载。(2) ScenarioStatus:
38、场景状态区域.位于窗口的右上角,可以在其中查看负载测试的概要信息,包括正在运行的Vuser的数量和每个Vuser操作的状态。(3) AvaliableGraph:可用图区域。位于窗口中间偏左位置,列出了LoadRounder能够提供的性能指标数据。(4) 图查看区域:位于窗口中间偏右位置,可以在其中自定义测试过程中显示的指标的数据。(5) 图例:位于窗口底部,可以在其中查看所选性能指标的数据负载生成器配置负载发生器(LoadGenerators)是一个可以独立部署并运行的脚本的负载引擎。82手工场景设置在一个测试场景中,需要设置执行的虚拟用户脚本,用来模拟真实用户对被测系统的访问。&2
39、.1场景脚本设置1. 添加脚本在创建场景时,可以选择要执行的脚本,在场景脚本区域内,还可以进一步增加新的阿胶本,单击“添加脚本”按钮,弹出添加脚本的对话框,在其中可以设置脚本所属的组,设置执行该脚本的虚拟用户数,选择执行该脚本的负载发生器,选择要执行脚本。2. 删除组在场景设置过程中,随时都可以删除虚拟脚本,在脚本列表中选择要删除的脚本后,点击“删除组”按钮,即可将该脚本删除3. 虚拟用户在创建手工场景时,如何没有选择"usethepercentagemodetodistributethevusersamongthescripts”选项,则每个脚本都有固定的虚拟用户。点击“虚拟用户”
40、按钮,可以打开虚拟用户对话框,在其中可以对虚拟用户进行管理。Run:启动Vuser开始执行。GradualStop:逐步停止。Stop:立刻停止。Reset:恢复初始状态。Details:査看脚本详情。AddVuser:增加虚拟用户Refresh:刷新表格状态Help:帮助Close:关闭窗口场景用户状态状态含义1挂起(Pending)Vuser已经准备好。可以进行初始化,正在将脚本文件传输到负载生产器2初始化(Init)Vuser正在初始化,执行对应Runlogic下的init部分3就绪(Ready)Vuser已经执行初始化操作,可以运行Action了4集合点"(Rendezvou
41、s)Vuser到达集合点,正在等待条件满足,然后释放101112完成并通过(Pass)完成并通过(Fa订ed)错误(Error)(GragualExiting)逐步退出(Exiting)退出Vuser已经运行结束,并且是成功通过Vuser已经运行结束,并且是失败Vuser发生了错误,要了解错误的完整说明,就要查看单个vuser的详细状态日志Vuser正在运行退出前的最后一次迭代(Stopped)停止(Down)关闭Vuser已经完成操作,正在退出Vuser被停止Vuser处于关闭状态第九章测试结果分析9.1Analysis基础Analysis包含的的主要窗口:会话浏览器(sessionexpl
42、orer)区域;属性(properties)区域;图查看区域;图例(legend)。Analysis的六大类分析图:虚拟用户(vusers)图;errors图;事务(transactions)图;web资源(webresources)图;网页细分(webpagebreakdown)图;系统资源(systemresources)图。性能测试分析流程:1从summary的事务执行情况入手;2查看负载发生器和服务器的系统资源情况;3查看虚拟用户与事务的详细执行情况4査看错误发生情况5查看web资源与细分网页9.2监控计数器的内容;9.2.1 Memory(内存):1. Ava订ablembytes可
43、用内存数2. Page/sec(input/out)为了解析硬页错误,从磁盘取出或写入的页数。3. Pagefault处理器每秒处理的错误页4. Pageinput/sec为了解决硬错误页,从磁盘上读取的页数5. Pagereads/sec为了解决硬错误页,从磁盘上读取的次数6. Cachebytes文件系统缓存,默认情况下为50%的可用物理内存7. Poolpagedbytes分页池中的字节数8. Poolnonpagedbytes非分页池中的字节数9.2.2 Process(进程):1. Pagefaults/sec每秒出错页面的平均数量2. Privatebytes此进程所分配的无法与其
44、他进程共享的当前字节数量3. Workset处理线程最近使用的内存页9.2.3 Processor(处理器):1. %processortimecpu利用率2. Processorqueuelength判断CPU瓶颈3. Interrupt/sec处理器接收并维护硬件中断的平均值4. %usertime处理器处于用户模式的时间百分比5. %privilegedtime处理线程执行代码所花时间的百分比6. %interruptetime处理器在实例间隔期间接受和服务硬件中断的时7. %DPCtime指在实例间隔期间,处理器用在延缓程序调用(DPC)接收和提供服务的时间百分比8. Queuelen
45、gth指跟踪服务器工作队列当前长度的计数器,该数值会显示出处理器瓶颈9.2.4 Physicaldisk(磁盘):1. %disktime指所选磁盘驱动器忙于读或写入请求提供提供服务所用的时间的百分比2. Averagediskqueuelength表示磁盘为读取和写入请求提供服务所用时间的百分比3. Averagediskreadqueuelength磁盘读取请求的平均数4. Averagediskwritequeuelength磁盘写入请求的平均数5. Averagedisksec/read磁盘中读取数据的平均时间6. Averagedisksec/transer磁盘中写入数据的平均时间9
46、.2.5 NetworkInterface(网络)Bytetotal/sec网络中接收和发送字节的速度9.3性能测试结果分析9.3.1常见图标解读1. Vusers(虚拟用户数)Runningvusers(负载过程中虚拟用户运行情况)Rendezvous(负载过程中集合点下的虚拟用户数)2. Errors(错误统计)3. Transactions(事物)averagetransactionresponsetime(平均事务响应时间)transactionspersecond(TPS每秒事物数)transactionsummary(事务概要说明)transactionperformancesum
47、mary(事务性能概要)transactionresponsetimeunderload(在用户负载下事务的响应时间)transactionresponsetime(事务响应时间的百分比)transactionresponsetime(distribution)(每个时间段上的事务数)4. webresources(网页资源信息)hitspersecond(每秒点击数)throughput(吞吐量)HTTPresponsepersecond(每秒HTTP响应数)Conllections(连接数)Connectionspersecond(每秒连接数)5. Webpagediagnostics(网页分析)Webpagediagnostics(网页分析)Downloadtime(下载时间分析)Component(overtime)(组件随时间变化)Downloadtime(overtime)(下载时间随时间变化)Timetofirstbuffer(overtime)(第一次缓冲随时间变化)Pagedownloadtimebreakdown(页面
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 文化具有民族性课件
- 苏教版五年级语文课件
- 农村房屋买卖合同模板
- 二零二四年度二手橡胶制品买卖合同2篇
- 二零二四年度大数据分析及处理服务合同2篇
- 2024版网络游戏虚拟物品交易服务合同3篇
- 化工设计:第三讲物料衡算
- 2024年度融资租赁合同:出租方与承租方2篇
- 2024年版高速公路工程顾问服务合同实例2篇
- 人教版九年级化学第四单元2水的净化课时1水的净化分层作业课件
- GB/T 44676-2024电动自行车售后服务规范
- 江苏省南京市五校联盟2024-2025学年高三上学期期中考试化学试题
- 国开(吉林)2024年《兽医临床诊疗技术》形成性测试1-3终考答案
- 免疫规划接种程序
- 2024-2030年中国管道压力管行业现状规模与投资前景预测报告
- 2024-2030年中国矿山工程行业发展前景预测规划分析报告
- 专题05 用所给单词的正确形式填空100道
- 生态系统的信息传递课件
- 消防宣传月全民消防生命至上消防安全教育课件
- 《愚公移山》-语文版省公开课获奖课件说课比赛一等奖课件
- 直播带货的供应链管理
评论
0/150
提交评论