




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
技术专题研究 负载测试 定义及目标 Loadtesting 负载测试 通过测试系统在资源超负荷情况下的表现 以发现设计上的错误或验证系统的负载能力 在这种测试中 将使测试对象承担不同的工作量 以评测和评估测试对象在不同工作量条件下的性能行为 以及持续正常运行的能力 负载测试的目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行 不是为了破坏系统 此外 负载测试还要评估性能特征 例如 响应时间 事务处理速率和其他与时间相关的方面 负载测试主要考验系统的两个指标 一个是系统的容量 另一个是系统的耐久性 系统的容量是指给系统添加大数据量的文件或者数据 让系统进行处理并实时观察系统的表现情况 目的是找到系统能添加负载的最大量 例如大数据量文件输入让系统处理 大访问量的输入处理等 系统的耐久性指给出数量巨大的任务 让系统始终处于高负荷量的运行状态 并观察记录系统的表现情况 目的是找到系统的疲劳点 例如运行多少时间后系统返回时间开始变大 系统什么时候处理时间变得缓慢等 容量测试 容量测试关注点是howmuch 而不是howfast例如 通过编辑一个巨大的文件来测试文字处理软件 通过发送一个巨大的作业来测试打印机 通过成千上万的用户邮箱来测试邮件服务器 有一种比较特别的容量测试是叫作 零容量测试 它是给系统加上空任务来测试 耐久性测试 例如 在一个循环中不停的运行客户端超过一个扩展时间段 负载测试周期及前提条件 负载测试周期 一次测试常常持续几天甚至几周 负载测试实现的前提是先准备巨大的数据量 例如上百兆的文件 上万的用户等 负载测试不会以系统崩溃为目的 负载测试的期望值一般以满足使用需求为主 不需要太夸张地数值 负载测试执行阶段 紧张的进度加上有限的资源 看起来会在不同阶段困扰着开发工作 有一些团队选择在每一次迭代时进行负载测试 大多数情况下 负载测试仅仅在开发周期的末期即项目被首次展示之前被执行 这就不可避免的会威胁到应用程序的质量及其满足客户的SLA 服务级别协定 的能力 故而应尽量在开发过程的早期执行 尽早地实施负载测试计划有助于确保将在开发时出现的意外情况降至最低限度 发现和修复开发周期中出现的系统问题 负载测试方式 通常来说 负载测试可以采用手动和自动两种方式 手动测试会遇到很多问题 如无法模拟太多用户 测试者很难精确记录相应时间 连续测试和重复测试的工作量特别大等 因此对于负载测试 手动方式通常用于初级的负载测试 目前 绝大多数的负载测试都是通过自动化工具完成的 测试人员及测试工具要求 测试人员 负载测试人员需要对整个网络架构应用和应用系统非常熟悉 测试工具 1 功能方面 主要考虑工具所支持的协议 分析方式 监视目标种类等以及该工具能否精确计量 回放用户的访问情况 2 性能方面 主要考虑它模拟虚拟用户的能力 例如考虑该工具在一定资源下可以模拟的用户数量和速度 负载测试软件工作原理图 负载测试软件须包含几个部分 1 记录软件 2 发生器 3 监控软件 4 报告软件 测试工具 LoadRunnerAstraLoadTestRationalRobotWebLoadVS2010中的LoadTestSilkPerformer 负载测试过程 第一步 系统分析分析被测系统需要满足什么要求 例如支持多少人在线 支持连续多长时间的访问等 以及需要定义测试所需输入的数据 测试者的主要任务就是将系统的需求转换成测试目标 对系统进行全面的分析和评估 并结合测试的实际环境和条件以确保测试目标和测试计划的正确性 例 确定测试哪些流程 测试中使用何种系统架构 并发连接数 预期每秒网络点击率等 负载测试过程 第二步 创建虚拟用户脚本首先 要记录业务流程 创建测试脚本 为了模拟多个用户访问服务器必须编写脚本 简单的脚本可以通过自动化工具提供的脚本编辑环境来编写 复杂的脚本则通常是通过记录单用户的活动生成最初的脚本 再在此基础上进行修改以保证该脚本可以支持多个用户 其中最主要的修改是关于数据池的 因为不同用户通常使用不同数据 例如用户名和密码等 因此 我们通常要将这些数据存储在数据库 或者数据池 中 以便在执行中被脚本程序调用 负载测试过程 第三步 构造运行环境有了脚本后 就可以通过一个场景来管理这些脚本的执行 场景是一个执行单位 可以通过场景来模拟一个工作负载 在场景中 我们将管理脚本的数量 执行次数 执行时间等 甚至还可以加上一些定时器 同步点等控制机制 另外 还可以将模拟用户分配到不同的计算机上 负载测试过程 第四步 运行场景设置好场景后 就可以运行了 通常 在运行场景的同时还要启动相关监控模块 监控服务器性能 网络状态 Web服务器性能和数据库性能等 自动化工具同时记录了各种客户端信息 包括相应时间 交易成功率等 负载测试过程 第五步 分析测试结果评估测试结果是负载测试过程中最重要的一步 通常 在场景运行后 自动化工具会生成标准报告 可以通过分析这个报告来分析整个系统性能 找到系统瓶颈 LoadRunner为例 LoadRunner是一种预测系统行为和性能的工业标准级负载测试工具 通过模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题 10字真言 虚拟的用户 真实的负载VuGen 脚本录制工具Controller 场景控制器Analysis 结果分析工具 负载测试VS压力测试VS性能测试 压力测试是指对系统不断加压力的测试 通过确定一个系统的瓶颈或不能接收用户请求的性能点 来获得系统能提供的最大服务级别的测试 压力测试的目的是发现在什么条件下系统的性能变得不可接受 并通过对应用程序施加越来越大的负载 直到发现应用程序性能下载的拐点 任何能使系统崩溃的测试都可以称之为压力测试 负载测试VS压力测试VS性能测试 性能测试的目的是找到系统在某种条件下的瓶颈 前提是这种条件在软件或服务的实际应用中可能发生 在进行性能测试之前 首先要明确两个值 一个是系统负载预期值 一个是系统响应时间的预期值 有了这两个目标 才可以使用对系统持续增加负载的方法来观察系统的瓶颈所在 性能测试的另一个目的是要建立一组被测系统的基准数据 系统在同样的测试环境与测试条件下 表现应当符合或优于基准数据的要求 否则测试不通过 另外 基准数据也可以为其他类似的系统提供预期数据及预期返回时间的数值参考 负载测试VS压力测试VS性能测试 负载测试 压力测试和性能测试的测试目的不同 但其手段和方法在一定程度上比较相似 通常会使用相同的测试环境和测试工具 而且都会监控系统所占用资源的情况以及其它相应的性能指标 案例 测试者使用LoadRunner测试工具 让Vuser从50一直增加到1000的过程中 观察系统的表现 重点关注响应数及响应时间这两个指标 当系统添加到50个Vuser时点击数及响应时间都保持在100左右 系统表现良好 当添加到250到1000个Vuser之后 系统点击数仍然保持在100 而响应时间最后超过150秒 最后系统崩溃 这次测试到底是什么测试呢 是什么方式的测试 案例分析 首先 我们设定了一个系统预期值500次点击量 没有设置响应时间 因为在正常情况下 点击就应该马上有响应 因此响应时间应该为零 这是性能测试和负载测试的基本要求 其次 当系统添加到250个Vuser之后 点击数仍然还是100 出现瓶颈了 而找系统的各种瓶颈正是性能测试的主要任务 此时CPU监控显示使用率为96 然后 我们给出了一个大数据量的访问 500个Vuser 这个值系统在4分钟到6分钟的时间之内 勉强还能跑起来 这是负载测试的典型情况 当然500个Vuser是期望值所定的 负载测试是否最大只能是这个数值还有待商榷 案例分析 最后 Vuser增加到1000 系统崩溃 这是压力测试的目的 在这次测试实践中 我们通过性能测试知道了系统目前的最大瓶颈在哪里 通过负载测试了解到500个Vuser条件下至少还能跑起来 因此可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 登报遗失租赁合同范本
- 过期妊娠催产素引产护理查房
- 医疗保障贷款合同
- 服务保理合同范本
- 美团电车合同范本
- 兼职配音协议合同范本
- 公务员合同范本
- 光伏售后合同范本
- 地皮转让流转合同范本
- 养鸡棚租赁合同范本
- 风光储储能项目PCS舱、电池舱吊装方案
- 原发性骨质疏松症诊疗指南(2022版)第一部分
- 重庆医科大学附属第一医院改建PET-CT、PET-MR项目环评报告
- 2022水电站计算机监控系统上位机现场验收标准手册
- 政务服务大厅管理规范:安全与应急处置
- 食管癌病人护理查房
- 双重预防机制构建-隐患排查治理(中石化中原油田天然气厂)
- 五牌一图(完整版)
- 二年级下册音乐《每天》教案
- 音乐美学.课件
- 心肺复苏说课比赛课件模板(一等奖)
评论
0/150
提交评论