性能测试实例资料

上传人:E**** 文档编号:101153694 上传时间:2019-09-26 格式:PPT 页数:130 大小:3.41MB
返回 下载 相关 举报
性能测试实例资料_第1页
第1页 / 共130页
性能测试实例资料_第2页
第2页 / 共130页
性能测试实例资料_第3页
第3页 / 共130页
性能测试实例资料_第4页
第4页 / 共130页
性能测试实例资料_第5页
第5页 / 共130页
点击查看更多>>
资源描述

《性能测试实例资料》由会员分享,可在线阅读,更多相关《性能测试实例资料(130页珍藏版)》请在金锄头文库上搜索。

1、2019/9/26,上海市计算机软件评测重点实验室,1,性能测试培训,蔡立志 上海市计算机软件评测重点实验室 上海计算机软件技术开发中心,2,2019/9/26,上海市计算机软件评测重点实验室,内 容 安 排,性能测试的目的 性能测试的概念 性能测试的策略 性能测试的计划 性能测试的结果分析 性能测试的案例 WEB 测试经验交流,3,2019/9/26,上海市计算机软件评测重点实验室,1. 性能测试目的,性能疑虑: 我的系统响应时间太慢了,到底问题出哪里? 要花多少时间做完一笔交易? 什么样的配置提供最好的性能? 那些因素降低了交易响应时间? 系统在无错的情况下承受多大的及多长的时间的负载。,

2、4,2019/9/26,上海市计算机软件评测重点实验室,1. 性能测试目的,评估系统的能力: 测试中得到的负荷和响应时间数据可以被用于验证所计划的模型的能力,并帮助作出决策。 识别体系中的弱点(瓶颈): 受控的负荷可以被增加到一个极端的水平,并突破它,从而修复体系的瓶颈或薄弱的地方。 系统调优: 重复运行测试,验证调整系统的活动得到了预期的结果,从而改进性能。,5,2019/9/26,上海市计算机软件评测重点实验室,1. 性能测试目的,检测软件中的问题: 长时间的测试执行可导致程序发生由于内存泄露引起的失败,揭示程序中的隐含的问题或冲突。 验证稳定性(resilience)可靠性(reliab

3、ility): 在一个生产负荷下执行测试一定的时间是评估系统稳定性和可靠性是否满足要求的唯一方法。,6,2019/9/26,上海市计算机软件评测重点实验室,1. 性能测试目的-检查可靠性举例,确定系统在连续的高工作负载下的稳定性级别。 强制系统在短时间内处理大量任务,以模拟系统在数周或数月的时间内通常会遇到的活动类型。,7,2019/9/26,上海市计算机软件评测重点实验室,1. 性能测试目的- 确定瓶颈举例,您可以运行测试以确定系统的瓶颈,并确定哪些因素导致性能下降,例如,文件锁定、资源争用和网络过载。,8,2019/9/26,上海市计算机软件评测重点实验室,1. 性能测试目的-度量系统容量

4、举例,查看现有系统中性能与负载间的关系,并确定出现响应时间显著延长的位置 “拐点”。可以确定是否需要增加资源以支持额外的用户。,9,2019/9/26,上海市计算机软件评测重点实验室,2. 性能测试的概念,性能: 系统的性能是一个很大的概念,覆盖面非常广泛,对一个软件系统而言包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等等。 负载压力是系统性能的一个重要方面。,10,2019/9/26,上海市计算机软件评测重点实验室,2.1 性能测试的概念,利用测试工具,模拟大量用户操作,对系统增加负载 ,考察系统的输出项,例如吞吐量、响应时间、CPU负载、内存使用等如何决定系统的性能,例

5、如稳定性和响应等。 模拟情况: 正常负载 峰值负载 异常负载,11,2019/9/26,上海市计算机软件评测重点实验室,2.2 性能测试的时机,时机1: 完成系统集成 完成功能测试 系统试运行阶段 最好的时机: 不用担心产生测试的垃圾数据问题 不用担心影响系统运行问题,12,2019/9/26,上海市计算机软件评测重点实验室,2.2 性能测试的时机,时机2: 系统运行期间出现性能问题。 目的:查找问题的原因。 注意事项: 必须备份运行的数据 设定专用的策略查找原因 必须采用采用出现问题的数据,13,2019/9/26,上海市计算机软件评测重点实验室,2.2 性能测试的时机,时机3 硬件升级:

6、目的:提高用户的投资效益 在旧系统上查找性能的瓶颈 在系统升级以后进行系统前后的比较。 升级前后的系统均应该做性能测试,14,2019/9/26,上海市计算机软件评测重点实验室,2.3 性能测试的分类,性能测试类型包括: 负载测试:确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况 。 强度测试: 强度测试是一种性能测试,他在系统资源特别低的情况下软件系统运行情况。 容量测试:确定系统可处理同时在线的最大用户数(在用户可接收的范围内)。 压力测试:通过确定一个系统的瓶颈或者 最大使用极限 的测试 。,15,2019/9/26,上海市计算机软件评测重点实验室,

7、2.3 性能测试的分类,疲劳强度测试: 系统稳定运行情况下能够支持的最大并发用户数或 者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。,16,2019/9/26,上海市计算机软件评测重点实验室,2.3 性能测试的分类,大数据量测试 独立的数据量测试 针对某些系统存储、传输、统计、查询等业务进行大数据量测试 综合数据量测试 和压力性能测试、负载性能测试、疲劳性能测试相结合的综合测试方案,17,2019/9/26,上海市计算机软件评测重点实验室,2.4性能测试的工具,手工测试: 多台电脑和同样数目的操作人员,在同意时刻擦作,几下

8、响应时间。 缺点: 需要的人力和机器设备 无法解决测试人员的同步问题 无法捕捉程序内部的变化情况,18,2019/9/26,上海市计算机软件评测重点实验室,2.4性能测试的工具,自动化性能测试工具 商业性能测试工具: 开源性能测试工具 自主开发工具测试,19,2019/9/26,上海市计算机软件评测重点实验室,2.4 性能测试的工具,自动化测试工具的弱点: 缺乏功能点的校验 对有些控件支持得不好 不能达到真实模拟负载 脚本的支持不够灵活 报错定位不够详细,20,2019/9/26,上海市计算机软件评测重点实验室,2.4 性能测试的工具,自动负载测试工具盲点: 在负载测试中,不进行功能校验,就是

9、当功能错误发生时,测试工具不能够记录产生的功能性错误,这就忽略了负载压力情况下的功能不稳定问题。 在负载压力测试过程中记录所有虚拟用户的操作及服务器的响应是当前负载压力测试技术发展的最大挑战。 但测试过程中的附加记录会导致资源消耗、操作行为增加以及产生大量日志等问题。,21,2019/9/26,上海市计算机软件评测重点实验室,2.4.1 商业测试工具,商业测试工具: Mercury Interactive的LoadRunner Compuware (康博)的Qaload Segue(赛格瑞)公司的Silk performer Spirent avalanche,22,2019/9/26,上海市

10、计算机软件评测重点实验室,2.4.1 商业测试工具,工具选择依据: 模拟您的客户机 运行多个模拟的客户机 脚本化执行并能编辑脚本 支持会话 协议 可配置的用户数量 报告成功、错误和失败,23,2019/9/26,上海市计算机软件评测重点实验室,2.4.1 商业测试工具 LoadRunner,特点: 支持的协议多且个别协议支持的版本高; 负载测试方案设置灵活; 丰富的资源监控,资源监控计数器 报告可导出Word, Excel以及HTML格式,24,2019/9/26,上海市计算机软件评测重点实验室,2.4.1 商业测试工具 LoadRunner,缺点: 可扩展性差,对不支持的协议无能为力; 资源

11、监控指标需进一步细化; 功能校验应该加入,25,2019/9/26,上海市计算机软件评测重点实验室,2.4.1 商业测试工具 Qaload,特点: 脚本直接采用c语言 从控制中心管理全局负载测试 快速创建仿真的负载测试 性价比较高,26,2019/9/26,上海市计算机软件评测重点实验室,2.4.1 商业测试工具 Qaload,缺点: 稳定性较差; 需要测试工程师有较强的编程经验; 协议升级不及时 脚本调试部方便,27,2019/9/26,上海市计算机软件评测重点实验室,2.4.1 商业测试工具 Silk performer,优点: 在工具中融合了功能测试的方法 脚本采用类Pascal语言,资

12、源消耗较小 支持动态的dll外部函数 错误可精确定位 提供了数据池模板,并可定制 用户可以通过拖拉的方式最为直观地定制测试报告,28,2019/9/26,上海市计算机软件评测重点实验室,2.4.1 商业测试工具 Silk performer,缺点 报告对中文的支持较差 报告导出以后html链接会丢失,29,2019/9/26,上海市计算机软件评测重点实验室,2.4.2 开源测试工具,OpenSTA URL:http:/portal.opensta.org 特点: 基于windows平台,Corba分布式软件测试体系。 具有脚本控制语言(SCL),用户创建脚本,并将输入数据参数化 测试基于Web

13、的应用软件,30,2019/9/26,上海市计算机软件评测重点实验室,2.4.2开源测试工具,TestMaker URL: 特点: 基于java架构,支持Windows、linux、unix平台。 脚本语言采用Jython.(Python的java实现) 提供Python的面向对象环境 支持HTTP/HTTPS、TCP/IP、SOAP以及XML,31,2019/9/26,上海市计算机软件评测重点实验室,2.4.2开源测试工具,Apache JMeter URL:http:/jakarta.apache.org/jmeter 特点: 纯JAVA,不受平台的约束 同时支持功能和性能负载压力测试 测

14、试JAVA对象、JDBC、数据库、Perl脚本、Web服务器和应用服务器等 可记录浏览器和Web服务器之间的通信。,32,2019/9/26,上海市计算机软件评测重点实验室,2.5 性能测试的原理,测试拓扑示意图,33,2019/9/26,上海市计算机软件评测重点实验室,2.5性能测试的原理,其中: Conductor 为测试控制机; Player 为测试代理机(测试代理机数目根据实际而定)。 被测服务器指WEB服务器或者数据库服务器、应用服务器等等。,34,2019/9/26,上海市计算机软件评测重点实验室,2.5性能测试的原理,基本原理 录制/回放方式来模拟用户的实际操作的 录制:测试工具

15、启动一个代理监视并获取在不同通信协议下客户端和服务器端的通信信息,生成测试脚本框架。 回放:测试工具通过控制台将测试脚本分发到各个负载测试生成器(测试代理)上,控制负载测试生成器模拟多个用户对服务器并发访问。,35,2019/9/26,上海市计算机软件评测重点实验室,2.5性能测试的原理,测试脚本的录制和分配原则: 脚本越小越好(一个功能一个脚本)。 选择负载压力最高的业务功能进行测试。 选择所需要的操作进行录制,如果部队服务器产生压力的操作可以不录制。,36,2019/9/26,上海市计算机软件评测重点实验室,2.5性能测试的原理,回放模式: 进程回放模式: 线程回放模式:,37,2019/

16、9/26,上海市计算机软件评测重点实验室,2.5性能测试的原理,测试的一般步骤: 选择协议 创建脚本:录制或者手工编写 参数华测试数据 创建虚拟用户,设定负载方案 执行测试 结果分析,38,2019/9/26,上海市计算机软件评测重点实验室,3. 性能测试的策略,内容包括: 负荷策略 网络策略 业务策略 监测策略,39,2019/9/26,上海市计算机软件评测重点实验室,3.1 性能测试的一般步骤,1 分析需求 2 制定测试策略 3 制定测试计划 4 设计测试用例 5 运行测试用例 6 分析测试结果,40,2019/9/26,上海市计算机软件评测重点实验室,3.2 分析测试需求,确定客户需求和期望 稳定性? 大数据量?性能? 压力?调优? 实际业务需求 必须达到什么的响应时间?稳定性怎么样?(实时系统、报警系统) 系统分析 使用的是什么系统?(决定了我们可以采用什么样的策略),41,2019/9/26,上海市计算机软件评测重点实验室,3.2 分析测试需求在软件生命周期中性能测试计划和需求,在需求分析中充分关注负载压力性能: 负载压力需求占10的需求分析时间

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号