《软件性能测试(培训机构专用PPT).ppt》由会员分享,可在线阅读,更多相关《软件性能测试(培训机构专用PPT).ppt(59页珍藏版)》请在三一办公上搜索。
1、软件性能测试,概览,在本章中,我们将学习:性能测试概述性能测试步骤 性能测试指标压力测试,目标,完成此课程之后,学员将具备以下能力:了解性能测试的概念了解性能测试的步骤理解基本的性能指标深入了解压力测试,课程目录,性能测试概述 性能测试的步骤 性能测试的指标压力测试,性能测试的概念,在正常、峰值以及异常负载条件下,测试系统的各项性能指标通过自动化的测试工具模拟进行,性能测试的目的,评估系统的能力 识别体系中的弱点 系统调优 验证可伸缩性(resilience)和可靠性(reliability),性能测试的内容,负载测试压力测试容量测试网络性能测试,负载测试,含义在测试过程中,逐渐增加系统负担,
2、直到出现系统不能接受的性能点目的发现系统的负载极限,压力测试,含义在不同的负载下测试系统的运行状况压力测试与负载测试的比较实现方法基本相同测试的目的不同,容量测试,含义确定测试对象在给定时间内能够持续处理的最大负载或工作量 使测试对象处理大量的数据,以确定是否达到了将使被测对象发生故障的极限,网络性能测试,含义测试网络带宽、延迟、负载和端口的变化对用户的响应时间的影响 实际应用主要是测试用户数目与网络带宽的关系,课程目录,性能测试概述 性能测试的步骤 性能测试的指标压力测试,性能测试的步骤,制定目标和分析系统选择测试度量的方法 选择相关技术和工具 制定评估标准 设计测试用例 运行测试用例 分析
3、测试结果,制定目标和分析系统,制定目标确定客户需求和期望确定实际业务需求确定系统需求分析系统系统类别系统构成系统功能,选择测试度量的方法,制定规范 制定相关流程,角色,职责 制定改进策略 制定结果对比标准,选择相关技术和工具,对各种性能测试工具进行评估 选择符合现有软件架构的性能测试工具,制定评估标准,用大量过去的,扩展的或者将来可能发生的数据组成散布图,利用这个图表不断和系统的当前状况对比 定义最初的测试作为标准,利用它和所有后来进行的测试结果进行对比,设计测试用例,了解软件业务流程 测试工具可以实现 一次尽可能的包含多个测试要素 尽可能发现软件的性能瓶颈,执行测试用例,通过性能测试工具运行
4、测试用例 在不同的测试环境上运行,分析测试结果,收集相关信息 进行数据统计分析 寻找性能瓶颈 不同的体系结构分析测试结果的方法也不同,课程目录,性能测试概述 性能测试的步骤 性能测试的指标压力测试,性能指标种类,响应时间内存(Memory)磁盘(Physical Disk)处理器(Processor)网络,响应时间,在某数据量的情况下,完成某功能模块所需要的时间,内存(Memory),Committed Bytes in Use(在使用字节)Available Bytes(可用的字节数)Page Faults/sec(页面错误/秒)Pages/sec(页面/秒),磁盘(Physical Dis
5、k),Disk Time(磁盘的时间)Idle Time(空闲时间)Avg.Disk Queue Length(平均磁盘队列 长度)Current Disk Queue Length(当前磁盘队列长度),处理器(Processor),Processor Time(处理器时间)User Time(用户的时间)Processor Queue Length(处理器队列长度),网络,Bytes Total/sec(总字节/秒)Packets/sec(包/秒),课程目录,性能测试概述 性能测试的步骤 性能测试的指标压力测试,压力测试,压力测试概述压力测试流程压力测试工具,压力测试的概念,压力在同一时间内
6、或某一时间内,向系统发送预期数量的交易请求并发交易请求递增交易请求并发递增交易请求压力测试测试系统在不同压力情况下的效率状况,以及系统可以承受的压力情况,压力测试的对象,B/S系统C/S系统其他复杂系统,压力测试的目的,发现影响系统性能的瓶颈 评价系统性能 对系统资源进行优化 提高响应时间与吞吐量,压力测试的局限,不能穷尽所有的情况或案例不能100%地达到需求,压力测试能够发现缺陷,原因并发运行时间长,压力测试能够发现缺陷,缺陷类型内存泄漏死锁线程泄漏,压力测试能够发现缺陷,缺陷特点隐蔽其他技术发现不了 最难解决,压力测试流程图,测试计划,测试用例,模拟多用户,设置并发点,执行测试用例/监测系
7、统资源,分析结果,是否接受结果,测试报告,Y,N,压力测试计划,分析应用系统,定义压力测试对象与目标,评审修改压力测试计划,选择压力测试工具,压力测试用例,明确测试目的准备测试环境确定测试数据确定测试运行程序(脚本等)明确预期结果,模拟多用户,方法通过多进程运行相同或不同的测试脚本来模拟多用户执行相同或不同的任务通过发包程序发送数据包测试数据参数化找到需要参数化的域合理的设置输入数据,设置并发点,原因被测事务不能同时运行实现原理等待释放唤醒,执行测试用例,运行测试脚本根据情况,调整并发的进程数结果自动记录,监测系统资源,监测的对象网络阻塞情况主机CPU使用情况内存使用情况缓存使用情况数据库系统
8、的数据锁,监测系统资源,监测的结果图像文件实时显示运行结束数据文件,监测系统资源图例,监测系统资源图例,监测系统资源图例,分析结果,分析对象测试使用的时间被测事务的响应时间(并发)进程数(成功数、失败数)进程失败原因事务响应时间随用户增加的变化图资源限制,分析结果,分析内容测试是否成功(失败原因)响应时间是否满足要求事务响应时间随用户变化图有无剧烈变化,优化调整设置,CPU问题内存与高速缓存问题磁盘(I/O)资源问题调整配置参数优化应用系统网络设置,测试报告,结果数据图形说明,压力测试工具,压力测试工具,脚本处理(脚本语句生成与解释器,包括脚本编辑),控制(多进程运行脚本控制),系统资源监控,
9、结果分析(测试、自动生成),脚本处理,捕捉用户操作解释为运行脚本语言编辑脚本语言自动运行模拟用户操作直接调用API,避免延迟,控制,控制并发多台计算机之间协调控制多台计算机之间并发控制,系统资源监测,监测内容脚本运行状态事务处理的时间变化事务处理的资源变化,结果分析,分析内容数据导出各事务随用户增多的时间响应变化每个事务完成的最快、最慢、平均时间、大部分完成(90%)的时间测试结果比较,目前压力测试工具介绍,QALoad(Compuware)WAS(Microsoft)Astra LoadTest(Mercury Interactive)LoadRunner(Mercury Interactive),本课总结,性能测试主要是测试软件运行中的各项指标是否符合需求压力测试是性能测试的重点压力测试是通过工具产生并运行并发事务来模拟软件系统的实际运行状态,从而获得各种性能指标,Thanks!,