非功能性测试.pptx_第1页
非功能性测试.pptx_第2页
非功能性测试.pptx_第3页
非功能性测试.pptx_第4页
非功能性测试.pptx_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

1 第九章非功能测试 软件测试方法和应用 9 2 本章内容 本章讨论与系统非功能测试相关的知识 包括性能测试兼容性测试用户界面测试安装测试安全性测试文档测试 软件测试方法和应用 9 3 非功能测试 系统的非功能属性系统的非功能属性不描述系统的功能而是站在整体的角度说明系统应满足的要求 如性能 安全 易用性 可靠性等非功能性测试软件测试高级话题之一验证系统的非功能属性是否满足用户需求的过程非功能性测试的执行 但是非功能测试的规划越早开始越好 通常在完成功能测试之后 以方便定位问题 主要涉及性能测试 兼容性测试 用户界面测试 安装测试 安全性测试和文档测试 软件测试方法和应用 9 4 性能 性能与被测系统相关的一系列度量指标 不同的系统关心不同的性能指标 例如通信软件关心的性能指标有接通率 掉话率 接续容量等证券系统关心下单速度 下单的数量 是否堵单等嵌入式软件关心的性能指标中断响应 内存使用 实时性站在用户角度 响应时间是所有系统都关心的指标性能 软件测试方法和应用 9 5 性能测试 定义是一个综合性的测试活动 通常包括一系列与被测系统性能相关的互相关联互相包含的测试活动 如常规的性能测试 负载测试 压力测试 并发测试 强度测试 大数据量测试等目的在于优化最重要的应用程序性能指标 提高用户体验的满意测试思想借助测试工具或手工开发测试脚本 模拟执行典型的用户行为 监控关键性能测量结果以判断定义的性能指标是否达到期望的目标 软件测试方法和应用 9 6 性能测试 常规的性能测试在正常条件下进行的测试 主要测试正常使用时系统是否满足要求 同时可能为了保留系统的扩展空间而进行一些稍稍超出 正常 范围的测试 负载测试通过逐步增加系统负载 测试系统性能的变化 并最终确定在满足性能指标的情况下 系统所能承受的最大负载量的测试 压力测试通过逐步增加系统负载 测试系统性能的变化并最终确定在什么负载条件下系统性能处于失效状态并以此来获得系统能提供的最大服务级别的测试 其目的在于发现在什么条件下系统的性能会变得不可接受 软件测试方法和应用 9 7 性能测试 强度测试迫使系统在异常的资源配置下运行以检查程序对异常情况的抵抗能力 判断系统的稳定性以及系统未来的扩展空间 并发测试要指测试多个用户同时访问同一个应用程序 同一个模块或者数据记录时是否存在死锁或者其它性能问题 并发一般分两种情况 严格意义上的并发 所有的用户在同一时刻做同一件事情或者操作广义范围上的并发 指用户对系统发出的请求或者进行的操作 可以是相同的也可以是不同的 软件测试方法和应用 9 8 性能测试 大数据量测试包含独立数据量测试和综合数据量测试 独立数据量测试是针对某些系统存储 传输 统计查询等业务进行单用户大数据量测试 综合数据量测试是与并发测试等相结合的在极限状态下的测试 软件测试方法和应用 9 9 性能测试过程 性能测试过程性能测试规划性能测试设计与开发性能测试执行与监控测试结果分析和系统调整 性能测试过程 软件测试方法和应用 9 10 性能测试规划 目标确定性能测试需求制定性能测试策略规划性能测试各类相关资源开发并评审性能测试计划 软件测试方法和应用 9 11 性能测试规划 步骤分析性能测试需求规划性能测试环境开发并评审性能测试计划 软件测试方法和应用 9 12 性能测试规划 步骤分析性能测试需求规划性能测试环境开发并评审性能测试计划 软件测试方法和应用 9 13 分析性能测试需求 依据用户需求说明任务明确性能测试目标和范围测试的对象应用系统的使用模式其它 软件测试方法和应用 9 14 分析性能测试需求 明确性能测试目标和范围用户需求不同 性能测试的目标也有所不同依据性能目标 确定相应的性能测试活动和范围包含系统要达到的性能指标 这些指标应该以可度量的形式给出并且统一性能指标的含义 软件测试方法和应用 9 15 分析性能测试需求 测试对象明确性能测试活动中涉及的功能点或功能点的组合用户类型 每种用户的数量 典型行为 系统行为 这些行为发生的时间和频率百分比 需要模拟哪些用户或者部门的哪些活动等内容明确用户任务的分布情况方法分析被测系统的业务用户对系统地使用情况 软件测试方法和应用 9 16 分析被测系统业务 测试对象确定系统的核心模块核心模块 业务比较复杂或者用户使用频率较高的模块模块间的耦合关系为了更加清晰地了解核心模块间数据的传输方式以便更真实地模拟多用户并发时的情况分析系统的压力点系统压力点多是用户使用比较频繁或者数据量较大的地方分析系统压力点是指站在全局角度来分析系统可能产生瓶颈的功能点 进而制定合适的测试方案 软件测试方法和应用 9 17 用户对系统地使用情况 意义确定用户对系统的使用情况是设计测试用例的基础方法用户现场调查分析系统日志需要的信息包括系统有多少类典型的用户 每类用户的大概数量 不同时间段各类用户大概按照何种比例使用系统 用户的行为 系统的行为 这些行为发生的时间和比率 在系统生命周期内用户数量的变化情况如何 可以利用任务分布图法描述上述信息 软件测试方法和应用 9 18 任务分布图示例 任务图示例 软件测试方法和应用 9 19 性能测试规划 步骤分析性能测试需求规划性能测试环境开发并评审性能测试计划 软件测试方法和应用 9 20 规划性能测试环境 任务规划性能测试的软硬件环境制定测试环境的维护策略反复使用Ghost维护一些测试环境利用VMware在同台电脑上构建多个测试平台使用备份 恢复策略维护数据库中的内容等 性能选择测试工具 软件测试方法和应用 9 21 规划性能测试环境 性能测试环境规划的内容一般的分布式处理系统其性能测试环境规划包括网络环境设计 带宽和拓扑结构操作系统环境规划数据库环境规划服务器环境规划硬件资源环境设计规划客户端环境规划 软件测试方法和应用 9 22 规划性能测试环境 如何规划性能测试环境了解终端用户的真实部署环境确定系统组件及各个组件的配置 掌握如下信息 连接到系统的用户数客户端计算机的配置情况服务器与客户端之间的通信方式中间件配置和应用程序服务器可能影响相应时间的其他网络组件通信设备的吞吐量每个设备可以处理的并发用户数 软件测试方法和应用 9 23 性能测试工具 为什么使用工具性能测试要通过模拟大量用户行才能进行 如果使用纯手工测试的方法 性能测试不仅在执行上异常困难另外成本也会变得难以让人接受 有很多可以进行性能测试的工具 比如 LoadRunnerIBMFunctionalTester开源工具 Jmeter Opensta Grinderetc 软件测试方法和应用 9 24 性能测试规划 步骤分析性能测试需求规划性能测试环境开发并评审性能测试计划 软件测试方法和应用 9 25 性能测试计划 内容性能测试策略和测试范围性能测试目标 方法 环境和工具性能团队成员及其职责测试进度安排性能测试执行标准 开始 结束 挂起 恢复等 性能测试中的风险相关的培训 软件测试方法和应用 9 26 性能测试设计和开发 目标设计并评审性能测试用例开发性能测试脚本验证脚本功能的正确性 软件测试方法和应用 9 27 性能测试设计和开发 主要设计内容场景设计不同业务模式下的场景不同时间段内的场景不同时期的场景数据设计并发数设计开发和收集反应用户实际行为的测试数据 软件测试方法和应用 9 28 并发用户数设计 方法极限法取最大在线用户数作为最大并发数 可以通过日志分析 也可以使用系统已经注册的用户数量作为系统的用户数量 然后按照经验公式来估算最大并发用户数量 用户趋势分析法对软件生存周期内的用户未来趋势进行分析 预测系统可能达到的最大使用用户数目 从而估计系统的最大并发用户数目经验评估法 软件测试方法和应用 9 29 性能测试设计和开发 步骤基于用户对系统的使用情况 分析出用户现实中的典型场景基于这些场景设计性能测试用例 确定测试中使用的具体数据借助性能测试工具或某种编程语言开发性能测试脚本实现性能测试用例并发用户数需要逐步提高 软件测试方法和应用 9 30 性能测试执行与监控 目标借助工具或者真实的用户 运依次执行性能测试用例 监控关键测量指标 收集相关数据 软件测试方法和应用 9 31 性能测试执行 任务搭建与维护测试环境选择和配置关键测量指标关键测量指标是在实际的性能测试过程中需要监控和分析的测量结果 通过观察这些测量结果来确认系统是否达到定义的性能目标 执行测试用例监控测试执行保存测试结果 软件测试方法和应用 9 32 结果分析与系统调整 目标分析测试结果 确定系统是否存在性能问题输出性能测试报告如果发现存在性能问题 则由相关责任人负责修改 修改完毕后 可能引起另一个性能测试周期用以验证问题是否解决 软件测试方法和应用 9 33 结果分析 原则由外而内 由表及里 层层深入从最终用户直接可以感受到的响应时间入手 如果测试结果显示满足用户对性能的期望 则系统的性能满足要求 否则说明系统存在性能问题确定系统瓶颈是出现在网络环节还是服务器环节CPU内存磁盘层层推进 判断相应环节的更细组件的响应时间 直到最后找到造成性能问题的根本原因 软件测试方法和应用 9 34 结果分析 CPUProcessTime 85 ProcessQueueLength 2 处理器个数内存Availablememory 0Pages 秒 Pagein s Pageout s Pagein的值需 80硬盘 磁盘的忙碌程度 DiskTime 80 软件测试方法和应用 9 35 性能调整 步骤确定问题确定原因确定调整目标测试解决方法分析调整结果 软件测试方法和应用 9 36 兼容性测试 定义验证被测系统是否可以在各种可能的运行环境中正常工作的测试活动为什么需要进行兼容性测试硬件类型 品种多种多样软件类型 品种多种多样软硬件之间客观存在的差异 使得系统在运行时存在在某些环境中工作正常但却在其它环境中出现问题的情况内容减少软硬件的组合数目 软件测试方法和应用 9 37 案例 案例如果要执行一个完全的兼容性测试 配置组合将是一个巨大的数字 以窗口在线游戏程序为例 假设游戏支持大约350个可能的显示卡 200个声卡 800个调制解调器 1200个打印机 这样就有350 200 800 1200种组合即便你只执行这些不同配置条件下的一定数量的测试用例 测试用例的数量也是相当可观的 软件测试方法和应用 9 38 兼容性测试步骤 对软件来说关注被测系统与其它软件之间的互操作和信息共享是否正常 需兼容的应用程序和它们的具体版本在规格说明书中定义 兼容性测试的软件环境通常 包括三方面平台和应用软件版本 需要考虑被测系统使用什么平台系统设计时考虑兼容的应用程序被测系统自身的向前向后兼容性标准 概要标准用于指导产品的基本操作属性 如颜色 感官 支持的特性等详细标准规定了产品的详细信息比如文件格式 通讯协议 软件测试方法和应用 9 39 兼容性测试步骤 对软件来说兼容性测试的软件环境通常 包括数据共享 如果数据在程序间共享 应遵守相应的协议和标准数据格式考虑文件存储和装载 输入输出 剪切 拷贝和粘贴实时数据传输方法下的共享信息是否正确 软件测试方法和应用 9 40 兼容性测试步骤 测试步骤对于硬件来说确定需要的硬件类型确定可用的硬件品牌 模块和设备驱动程序确定被测系统可能用到的硬件特性 模式和选项构造硬件配置列表确定被测系统在这些硬件组合下的独特属性 软件测试方法和应用 9 41 确定硬件配置 通过如下方式确定你需要的硬件类型 问问自己需要什么样的硬件配置确定软件所需的关键硬件仔细检查软件特性确保考虑了各种情况确定哪些硬件品牌 调制解调器和设备驱动器是可用的确定合适的设备 不要太老的确定对等的配套设备确定设备驱动器 考虑下列因素 操作系统 装备 在该硬件或操作系统上可用的最新驱动客户有的或可以得到的硬件 软件测试方法和应用 9 42 确定硬件配置 确定哪些硬件特性 模式和选项是可能使用到的每个设备都有很多选项你的软件未必需要支持所有的设备选项最小配置应该被测试记录下确定的硬件配置运用等价类法划分确定的硬件类型把配置信息记录到表单中 比如普及度 类型 年限 制造商 模型 设备驱动版本 选项等等把通过步骤1中确定的硬件填写到表单中如果需要 使用决策表进一步缩小配置组合检视表单并确定你的项目最关注哪种配置 软件测试方法和应用 9 43 确定硬件配置 确定在这些硬件组合下软件的独特属性不要期望在每种确定的硬件配置上进行所有的软件特性测试在很多的情况下很难确定与硬件相关的特性 可以通过 采用黑盒方法走读产品 找出与硬件相关性强的特性与项目团队成员交流 特别是程序员 软件测试方法和应用 9 44 如何获得硬件 得到所有的已确定的测试硬件是很困难的每样东西都买成本很高有时这种硬件只用一次维护不同的硬件 版本 驱动软件非常困难方法只卖最常用的配置从硬件厂商处借用或租用向公司内其他项目团队借用假如如上都不可能 建设一个配置兼容性测试实验室 软件测试方法和应用 9 45 用户界面测试 定义是用于核实用户与软件之间的交互 验收用户界面中的对象是否按照预期的方式运行 并符合国家或行业的标准的测试活动 关注界面层和界面与功能的接口层 由于界面的美学具有很大的主观性 用户界面测试是一项主观性较强的活动 用户界面测试的分类界面整体测试 评价用户界面的规范化 一致性和合理性界面元素测试 关注对窗口 菜单 图标 文字 鼠标等界面中元素的测试 软件测试方法和应用 9 46 界面整体测试规范性是指软件界面要尽量符合现行标准和规范 并在应用软件中保持一致 可采用行业标准一致性 既包括使用标准控件 也指相同的信息表现方法还指界面在不同软件平台上的显示界面规划是否一致 这包括窗口位置 窗口对齐方式 按钮位置和按钮对齐方式标签和显示是否一致界面外观是否一致 这包括控件尺寸 颜色 背景和显示信息操作方法是否一致快捷键在每个配置项上的语义是否一致 用户界面测试 软件测试方法和应用 9 47 界面整体测试合理性 观察用户界面和软件功能间的一致性界面元素的描述和颜色是否与功能相符合前景和背景颜色是否符合界面元素间的尺寸和对齐方式是否恰当窗口尺寸是否恰当界面定制性测试界面元素定制工具条定制统计查询定制报告格式定制 用户界面测试 软件测试方法和应用 9 48 界面元素测试窗口测试窗口尺寸 菜单和工具条是否彼此风格一致激活窗口是否可以正确显示窗口是否可以正常关闭窗口被覆盖并重新调用后 窗口是否能够正确再生窗口控件是否可以随窗口的缩放而缩放子窗口位置是否正确 用户界面测试 软件测试方法和应用 9 49 界面元素测试菜单测试选择相应的菜单后 功能执行是否正确不同级的菜单的显示格式和操作方法是否一致菜单功能的名称是否简单易懂菜单组合是否合理并且工作正常是否所有的菜单命令都可以通过鼠标执行 用户界面测试 软件测试方法和应用 9 50 界面元素测试图标测试图标是否与人们的使用习惯一致图标与菜单功能是否一致图标具有清晰的轮廓图标是否有工具提示 标注 鼠标测试鼠标操作 多次点击鼠标 鼠标左右键是否都可以识别支持滑轮操作随机点击鼠标 观察是否有无法预期的结果出现 用户界面测试 软件测试方法和应用 9 51 界面元素测试文字描述测试文字描述是否传达作者的思想意图拼写是否正确描述是否清晰准确是否有语法错误 用户界面测试 软件测试方法和应用 9 52 安装测试 定义安装是终端用户操作系统的第一步 安装测试评价软件是否可以被成功地安装最简单的方式是在一台运行正常的机器上按照用户安装指导书的要求 一步步地安装软件安装测试包括评价安装指导书 检视安装指导书 重点关注安装平台 过程和配置描述对自动化安装进行测试对安装选项和设置进行测试安装过程的中断进行测试对安装次序进行测试 软件测试方法和应用 9 53 安装测试 包括在不同的平台上安装软件安装正确性检查 安装后运行软件以确认安装的正确性修复和卸载测试 修复测试关注系统数据的丢失 而卸载测试关注系统是否可以彻底卸载 软件测试方法和应用 9 54 安全测试 定义软件安全性是与防止对程序及数据非授权的故意或意外访问能力有关的软件属性安全性测试是验证集成在系统内的保护机制是否能够在实际中保护系统不受非法的侵入针对程序和数据的安全性测试是软件安全性测试的重要内容应用软件的安全测试主要侧重于用户对数据或业务功能的访问控制 数据存储和数据通信的远程安全控制 软件测试方法和应用 9 55 安全性测试 安全测试验证如下系统安全策略用户认证加密安全防护策略网络扫描漏洞扫描密码破解渗透检测数据备份和恢复防病毒策略 软件测试方法和应用 9 56 安全性测试步骤 威胁模型是一项工程技术 用于帮助确定应用程序方案上下文中的威胁 攻击 漏洞和对策基于威胁建模思想的安全性测试步骤识别威胁定义威胁级别设计安全测试用例执行测试报告结果 软件测试方法和应用 9 57 安全性测试方法 威胁模型功能验证利用黑盒测试方法对涉及安全的软件功能如 用户管理模块 权限管理模块 加密系统 认证系统等进行测试 验证上述功能是否有效 漏洞扫描借助特定的漏洞扫描器完自动检测远程或本地主机安全性弱点模拟攻击实验是一组特殊的黑盒测试用例 用来模拟攻击以验证软件或信息系统的安全防护能力 在数据处理与数据通信环境中特别关心的几种攻击包括冒充 重演 消息篡改 服务拒绝 内部攻击 外部攻击 陷阱门和特洛伊木马 软件测试方法和应用 9 58 安全性测试方法 威胁模型侦听主要用于对网络加密的验证 是在数据通信或数据交互过程 对数据进行截取分析的过程 软件测试方法和应用 9 59 应用软件的安全性测试 内容用户对数据或业务功能的访问控制用户权限控制操作系统数据存储数据库权限控制数据通信的远程安全控制通讯加密 软件测试方法和应用 9 60 软件文档

温馨提示

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

评论

0/150

提交评论