第5章_能测试.ppt_第1页
第5章_能测试.ppt_第2页
第5章_能测试.ppt_第3页
第5章_能测试.ppt_第4页
第5章_能测试.ppt_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Slide1 05January2020 第五章性能测试 5 1性能测试的概念 性能测试是通过自动化测试工具模拟多种正常值 峰值 异常负载的条件下对系统各项指标进行的测试 1 系统性能的主要指标 1 吞吐量 处理能力 请求数量 每秒 页面数量 每秒 2 负载 客户端负载 服务器端负载 3 响应时间 最大响应时间 平均响应时间 网络传输时间 Web服务器处理时间 应用服务器处理时间 数据库服务器处理时间 Slide2 05January2020 第五章性能测试 5 1性能测试的概念 1 系统性能的主要指标 4 TPS TransactionsPerSecond 应用系统每秒钟处理完成的交易数量 TPS值表现的是服务器端的程序行为 是衡量服务器处理能力高低的一个主要指标 5 HPS HitsPerSecond 每秒点击次数 指在1秒钟的时间内用户对Web页面的链接 提交按钮等点击的总和 HPS值表现的是用户整体行为 是衡量在线负载的指标 Slide3 05January2020 5 1性能测试的概念 2 性能瓶颈概念 1 硬件性能瓶颈 2 网络设备性能瓶颈 3 操作系统性能瓶颈 4 服务器软件性能瓶颈 5 应用程序性能瓶颈 Slide4 05January2020 5 2负载压力测试 负载压力测试是指在一定约束条件下测试系统所能承受的并发用户量 运行时间 数据量 以确定系统所能承受的最大负载 负载压力测试是性能测试的重要组成部分 主要方法是并发性能测试 疲劳强度测试 大数据量测试 速度测试 Slide5 05January2020 5 2负载压力测试 负载压力测试的位置 1 客户端交易处理 2 服务器资源 3 数据库资源 4 Web服务器 5 中间件 5 2 1负载压力测试指标 Slide6 05January2020 5 2负载压力测试 交易处理的负载压力指标 1 并发用户数量 2 交易处理指标 平均事务响应时间 1秒钟内处理事务总数 5 2 1负载压力测试指标 Slide7 05January2020 5 2负载压力测试 交易处理的负载压力指标 3 Web请求指标 每秒点击次数 吞吐量 每秒HTTP响应数量 每秒下载页面数量 每秒重试次数 每秒SSL连接数量 5 2 1负载压力测试指标 Slide8 05January2020 5 2负载压力测试 并发性能测试的两个阶段 负载测试 压力测试 逐渐增加负载 直到系统性能瓶颈出现 通过综合分析系统的执行指标和资源状况确定系统的并发性能 负载测试 性能拐点之前的测试 压力测试 性能拐点以上的测试 1 并发测试的意义主动的负载和压力测试可避免出现意外情况 从而确保网站在高负载的情况下仍能正常运转 5 2 2并发性能测试 Slide9 05January2020 5 2负载压力测试 2 并发测试的好处 1 可预测成本和预算成本 2 避免花费高昂的费用来补救以前存在的问题 3 更精确地预测可扩展性 4 提高网站性能 3 并发测试的目标 1 评价系统的当前性能 2 预测系统的未来性能 3 找到瓶颈问题 5 2 2并发性能测试 Slide10 05January2020 5 2负载压力测试 4 负载测试负载测试是在特定运行环境下对被测对象施以大用户量 检查CUP负载 内存使用 响应时间等影响系统性能的指标通过软件工具创建虚拟用户 模仿典型的操作行为 在虚拟用户开展活动的期间 控制台将记录服务器的反应时间 提供给测试人员进行分析 5 2 2并发性能测试 Slide11 05January2020 5 2负载压力测试 5 压力测试压力测试是在特定运行环境下长期连续运行被测软件 并施加一定的负载 并发 多用户 多重循环 检查内存使用 系统响应时间等影响系统性能的指标 1 稳定性压力测试 2 破坏性压力测试 压力测试的目的是发现在什么条件下系统的性能变得不可接受 并通过对应用程序施加越来越大的负载 直到发现应用程序性能下降的拐点 5 2 2并发性能测试 Slide12 05January2020 5 2负载压力测试 6 并发测试的准备工作 1 准备测试环境 2 选择测试工具 3 产生测试数据 5 2 2并发性能测试 Slide13 05January2020 5 2负载压力测试 疲劳强度对系统而言也是一种负载 其关注的重点是系统经过长时间运行后的状态 主要暴露的问题有内存泄露 资源争用等 疲劳强度测试是在系统稳定的情况下施加一定量的并发用户数量 并持续运行 检查系统性能指标和资源占用情况 1 日常业务疲劳强度模拟 2 高峰业务疲劳强度模拟 5 2 3疲劳强度测试 Slide14 05January2020 5 2负载压力测试 1 大数据量测试类型 1 独立数据量测试 2 综合数据量测试 2 自动生成大数据量大数据量测试的基本条件就是能够生成大量的数据和并发操作 对于特定的系统 可以自行开发数据发生器和自动并发操作模拟系统 3 大数据量管理数据生成 数据编辑 类型转换 数据比较 数据迁移 5 2 4大数据量测试 Slide15 05January2020 5 2负载压力测试 1 制定测试计划 1 定义测试目标 以可度量的指标作为测试目标 确定测试时间 2 定义测试范围 定义性能度量的范围 定义虚拟用户 VUser 5 2 5负载压力测试实施 Slide16 05January2020 5 2负载压力测试 2 分析测试需求 1 分析应用程序 连接到系统的用户数量 客户机的硬件配置情况 Web服务器和数据库服务器的性能 客户机与服务器之间的通信方式 分析任务分布情况 5 2 5负载压力测试实施 Slide17 05January2020 5 2负载压力测试 2 分析测试需求 2 测试需求的内容 测试对象 系统配置 应用系统软件结构 3 测试强度估算测试强度估算 按照80 20原理 每个工作日中80 的业务量在20 的时间内产生的 计算出应当施加的测试强度 5 2 5负载压力测试实施 Slide18 05January2020 5 2负载压力测试 3 测试强度估算例 每年的业务量主要集中在8个月 每个月有20个工作日 每天有8小时工作时间 每天有80 的业务量是在1 6小时内处理的 假定全年业务处理量为100万笔 系统要求按2倍日常业务量进行测试 年请求数 100 15 7 100 70 5 100 15 3 2 1000万 年日请求数 1000 160 6 25万 日秒请求数 62500 80 1 6 3600 8 68次 秒 5 2 5负载压力测试实施 Slide19 05January2020 5 2负载压力测试 3 设计测试案例 1 测试策略 2 案例设计 5 2 5负载压力测试实施 Slide20 05January2020 5 2负载压力测试 3 设计测试案例 3 测试内容一般包括并发性能 疲劳强度 大数据量等 4 准备测试环境 1 测试环境的基本原则 满足软件运行最低要求 选择与被测系统一致的操作系统和运行环境 采用相对独立的测试环境 系统内无病毒 5 2 5负载压力测试实施 Slide21 05January2020 5 2负载压力测试 4 准备测试环境 2 负载压力测试环境的注意事项 如果是完全真实环境 要考虑测试对现有业务的影响 如果是模拟真实环境 必须先考虑服务器 数据库 中间件的真实 施加大数据量 后考虑客户机的真实性 配置与业务相关的测试环境 测试环境中应包括对交互操作的支持 测试环境中应包括安装 备份和恢复过程 5 2 5负载压力测试实施 Slide22 05January2020 5 2负载压力测试 5 准备测试工具 1 模拟多个客户机 2 能够编辑 执行脚本程序 3 支持会话或cookies 4 可以配置用户数量 5 延时时间 6 随机选择交互数据 7 运行状态报告 8 导出测试结果 9 提供测试分析工具 5 2 5负载压力测试实施 Slide23 05January2020 5 2负载压力测试 6 准备测试数据 1 初始测试数据 2 大量测试数据 3 典型取值数据 7 手工编写测试脚本 Web服务器通用性能测试系统 这个系统不仅能够测试静态HTML页面的响应时间 而且能够模拟真实运行情况 测试动态网页 ASP PHP JSP 的响应时间 为服务器性能优化和调整提供依据 5 2 5负载压力测试实施 Slide24 05January2020 5 2负载压力测试 7 手工编写测试脚本 Web服务器通用性能测试系统 主要由三部分组成 1 性能测试数据 2 性能测试程序 3 性能测试结果 在实际运行的Web应用系统中 用户访问页面时传递的query字符串里的参数是不同的 为了逼真地模拟实际情况 测试系统应当在特定时间段内向待测页面同时发送多个请求 每个请求的query参数互不相同 5 2 5负载压力测试实施 Slide25 05January2020 5 2负载压力测试 7 手工编写测试脚本 5 2 5负载压力测试实施 读URL信息 读数据文件 并发进程1 发送请求计时开始 接收响应计时结束 下一会话 测试系统 并发进程2 并发进程n Slide26 05January2020 5 2负载压力测试 7 手工编写测试脚本用户访问Web需要发送URL 信息格式是纯文本 GEThttp host port path filename xxx 1 2 测试程序可以开设n个进程 每个进程可以串行地开设m个会话 每个会话模拟一个用户 按照访问Web的URL格式 从数据文件中读取参数 发出Web访问请求 同时 程序开始计时 直到系统响应 停止计时 统计接收的字节数 保存测试结果 本次会话结束 进入下一个新的会话 如此循环m次 5 2 5负载压力测试实施 Slide27 05January2020 5 2负载压力测试 5 2 5负载压力测试实施 主程序 读入数据文件形成二维数组 读URL信息 子进程 等待 统计结果 子进程 打开Socket 从二维数组中读取随机数 执行Session 记录输出 关闭Socket 单个Session 生成请求字符串 开始计时 连接Web服务器 超时吗 停止计时 计算总连接时间和接收字节数 结果保存 超时为 1 Slide28 05January2020 5 2负载压力测试 8 测试脚本录制 编写与调试测试脚本是指Vuser脚本 即虚拟用户回放所使用的脚本 1 录制基本脚本 2 编辑增强脚本 3 配置运行时设置 4 以独立模式运行Vuser脚本 5 2 5负载压力测试实施 Slide29 05January2020 5 2负载压力测试 9 场景制定 1 创建Vuser组 2 配置Vuser 3 配置Vuser运行时设置 4 配置负载生成器 10 执行测试 1 运行场景 2 查看Vuser 3 监视场景 5 2 5负载压力测试实施 Slide30 05January2020 5 2负载压力测试 11 结果评估与测试报告 1 交易处理性能 并发用户数量 交易响应时间 交易通过率 吞吐量 2 资源占用性能 服务器操作系统占用资源 数据库资源占用 中间件资源占用 5 2 5负载压力测试实施 Slide31 05January2020 5 2负载压力测试 1 单一类型操作的响应时间过长 1 数据库负载过重 2 糟糕的数据库设计 3 事务粒度过大 4 批处理任务量过大 2 并发处理能力差应用系统在执行同一类型事务的多个实例时 不能获得与执行实例数量相当的吞吐量 而是大大低于理论值 5 2 6数据库服务器性能问题及原因分析 Slide32 05January2020 5 2负载压力测试 3 锁冲突严重 1 资源锁定导致事务处理超时 批任务的长时间资源锁定影响其他独立事务处理 导致超时 大粒度事务处理在并发执行的实例较多 造成超时 锁资源没有被释放 导致超时 5 2 6数据库服务器性能问题及原因分析 Slide33 05January2020 5 2负载压力测试 3 锁冲突严重 2 数据库死锁 互斥条件 一个资源被分配给特定的资源 持有并等待条件 被授权持有资源的进程还可以申请新的资源 不可取代原则 资源不能强制从进程中被取走 必须等待持有资源的进程明确释放 环等待条件 存在两个以上的进程环形链 其中每一个进程都等待下一个成员所持有的资源 5 2 6数据库服务器性能问题及原因分析 Slide34 05January2020 5 3网络性能测试 1 吞吐量吞吐量是指被测设备或系统在不丢包的情况下能够达到的最大包转发速率 2 丢包率由于资源缺乏而未转发的包与拟传输包总数的比例 3 网络延时系统在有负载的条件下转发数据包所需要的时间 5 3 1网络性能测试指标 Slide35 05January2020 5 3网络性能测试 4 响应时间从发出请求到获得响应所花费的时间 影响响应时间的因素有很多 如网段的负荷 网络主机 5 网络带宽容量网络带宽容量指的是在网络的两个节点之间的最大可用带宽 这是由组成网络的设备能力所决定的 6 网络利用率网络被使用的时间与总时间 被使用的时间 空闲的时间 的比例 5 3 1网络性能测试指标 Slide36 05January2020 5 3网络性能测试 1 吞吐量测试方法吞吐量测试通常在一对端口上进行 以最大速度在设定的时间段内生成传输流 如果存在丢包现象 则将负载减少50

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论