单元测试计划与实施2汇编.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单元测试计划与实施2汇编

? IPL Information Processing Limited 1997 An Introduction to IPL ? IPL Information Processing Limited 设置测试目标 我们怎样得知单元已经准备好可以集成了? 所有的单元测试用例必须通过 修正了所有错误 修正了所有错误的单元测试用例 (有时在高级别的测试中较少严格遵守) 所有测试用例是可维护的 最新版本的单元都被测试到了 所有改变都被测试到了 所有文档都齐全 覆盖目标都达到了 .................... 测试代码覆盖率 软件代码真正测试过的比率 通常以百分比表示 完全的测试增强测试这对软件的信心 多种的覆盖率测试 工具一般提供和使用以下指标 语句覆盖 分支覆盖 条件覆盖 语句覆盖 语句覆盖率,即执行过的语句的百分比 = 起码执行过一次的语句的数量 被测代码中所有语句的数量 不非常彻底 忽略掉了空的分支 在这个例子里,只需要一个‘true’ 条件的测试用里就可以完全覆盖所有语句: IF (cond_a) (cond_b) (cond_c) THEN do_something; END_IF; 忽略掉了复杂的条件 分支覆盖 即判定覆盖 条件判定的扇出确定执行过的百分比 = 起码执行过一次条件判定的扇出数目 所有条件判定的扇出数目 包容语句覆盖 仍然忽略掉了复杂的条件 IF (cond_a) (cond_b) (cond_c) THEN...... 根据图形理论(流程图)定义 条件覆盖 包括复杂组合条件 复杂的变化 操作数 – 考虑true 和 false 操作符 - (true:true), (true:false), (false:true), (false:false) 如此组合的操作数 操作数组合 – 所有操作数组合在一个表达式中 修正条件的覆盖率(MC/DC) - 显示每一个操作数独立影响条件结果的能力 条件覆盖 可以包含 逻辑表达式 ,除了判定条件(DC) flag := (cond_a) (cond_b) (cond_c); IF flag THEN...... 例子 考虑表达式 A or (B and C) 条件覆盖的实施 由于编译器的优化,覆盖情况可能会有一些变动 C 语言缩写 “or” 和 “and” (false:X) 与缩写为 “” (true:X) 或缩写为 “||” Ada缩写为 “and then” 和 “or else” 考虑一下 “优化后” 覆盖率有那些变动 “C 优化后” 条件覆盖 “”的覆盖 - (false:X), (true:false), (true:true) “||”的覆盖 - (false:false), (false:true), (true:X) 选择覆盖率的测试 选择覆盖率的测试 选择可获得 100%的覆盖率 获得 100% 的弱覆盖优于 50% 的强覆盖 所有单元的分支覆盖都应保证 强条件覆盖的度量是很有益处的 MC/DC覆盖 操作符的覆盖 尤其对于复杂的条件 简单条件也可适用 动态分析 评估软件行为 包括覆盖率度量 也包括: 执行轨迹跟踪 时间分析 执行状况的跟踪纪录 跟踪执行信息 语句执行情况 分支 数据值 条件的赋值 入口与出口点 上下文的转换 执行的错误和异常情况 使用执行的跟踪纪录 不必跟踪所有 你会陷入大量的数据之中 有选择的使用 跟踪执行危险的区域 跟踪分析已知的 bugs 时间分析 执行时间 性能测试的需要 评定代码的效率 仅仅在目标环境上适用 执行情况 那些代码经常执行 确定热点 适用于主机和目标平台 多用于集成测试阶段 总结 在测试策略中设置测试目标 选择覆盖率的度量 适当的完整的需求 可达到 100% 有选择的跟踪执行 设计错误条件 辅助调试 设计文档中对时间的限制 使用时间分析检查性能 黑盒测试技术 黑盒 (功能) 测试 依据单元的接口和软件功能说明书 不必考虑软件的内部结构 基于规格说明的测试 等价值划分 边界值分析 状态跃迁测试 基于规格说明的测试 依据规格说明书设计测试用例 每一个测试用例 其他文档也可应用类似技术, 像安全分析报告 基于规格说明的测试- 例子 求平方根的函数 输入 – 实数 返回值 – 实数 当输入为正数时,平方根给出正确返回值. 当输入为负数时, 给出错误信息 “开平方根出错 – 负数不能开平方” 并返回值为零. “Print_Line” 显示出相应的错误信息. 注意 在规格说明中,说明了“Print_Line”的使用。 例子 – 测试用例 “求平方根” 的规格说明书 测试用例 1: 输入 4, 返回值 2 测试第一句说明 测试用例 2:输入-10,返回值 0, 输出

文档评论(0)

6952225 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档