网站大量收购闲置独家精品文档,联系QQ:2885784924

软件测试第四章单元测试课件解读.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件测试技术 东北大学软件学院 吴辰铌 第四章 单元测试 主要内容 4.1 什么是单元测试 4.2 单元测试策略 4.3 单元测试分析 4.4 单元测试用例设计 4.5 单元测试过程 4.6 单元测试应坚持的原则 4.7 小结 4.1 什么是单元测试 4.1 什么是单元测试 单元测试(Unit Testing)是对软件基本组成单元进行的测试,又称为模块测试。 单元的基本属性: 明确的功能 规格定义 与其它部分明确的接口定义 例:C++中的public的成员函数,单独的函数或类。 4.1 什么是单元测试 单元测试的目的: 验证代码是否与设计相符; 跟踪需求和设计的实现; 发现设计和需求中存在的错误; 发现编码过程中引入的错误。 4.1 什么是单元测试 对单元测试的误解 单元测试浪费了太多时间。 单元测试仅仅是证明这些代码做了些什么。 我是个很棒的程序员,我可以不进行单元测试。 不管怎样,集成测试将会抓住所有的Bug。 它的成本效率不高。 4.2 单元测试策略 桩模块(Stub):用以模拟被测模块工作过程中所调用的模块,它们一般只进行很少的数据处理,例如打印入口和返回。 驱动模块(Driver):用以模拟被测模块的上级模块,它接受测试数据,把相关的数据传送给被测模块,启动被测模块,并打印相应的结果。 4.2 单元测试策略 由顶向下的单元测试策略 先对最顶层的单元进行测试,把顶层所调用的单元做成桩模块,其次对第二层进行测试,使用上面已测试的单元做驱动模块,以此类推。 由底向上的单元测试策略 先对模块调用层次图上最底层的模块进行单元测试,为该模块建立驱动模块,其次对上一层做单元测试,下面测试过的模块做桩模块,以此类推。 孤立测试 不考虑每个模块与其他模块之间的关系,为每个模块设计桩模块和驱动模块。 4.3 单元测试分析 单元测试所考虑的方面: 4.3 单元测试分析 模块接口: 调用所测模块时的输入参数与模块的形参在个数、属性、顺序上是否匹配。 参数与变量的属性、单位是否一致。 全局变量的定义在每个模块中是否一致。 是否修改只是作为输入值的变量。 有没有把常数当变量来传送。 调用内部函数时,变量的个数、属性和次序是否正确。 4.3 单元测试分析 局部数据结构: 检查不正确或不一致的数据类型说明。 使用尚未赋值或尚未初始化的变量。 错误的初始值或错误的默认值。 变量名拼写错误或书写错误。 不一致的数据类型。 上溢、下溢或地址错误。 4.3 单元测试分析 独立路径: 误解或不正确的算术优先级。 运算方式错误。 不同数据类型的比较。 不正确的逻辑运算符或优先次序。 错误或不可能的循环终止条件。 不恰当的修改了循环变量。 因浮点数运算精度问题而造成的两值比较不等。 4.3 单元测试分析 出错处理: 出错的描述难以理解。 出错的描述不足以对错误定位和确定出错的原因。 显示的错误与实际的错误不符。 对错误条件的处理不正确。 在对错误进行处理之前,错误条件已经引起系统的干预。 遗漏的错误处理。 4.3 单元测试分析 边界条件: 循环条件。 控制流中刚好等于、大于、小于确定的比较值时出现错误的可能性。 4.4 单元测试用例设计 为系统运行起来而设计用例 为正向测试设计用例 验证设计说明书所对应的功能项或性能指标能否兑现。 为逆向测试设计用例 验证被测的软件单元有没有做它不应该做的事情。 为满足特殊需求设计用例 为代码覆盖设计用例 为覆盖率指标完成设计用例 4.4 单元测试用例设计 主要采用的方法: 等价类划分 边界值分析 定义/使用测试 逻辑覆盖测试 路径测试 4.5 单元测试过程 4.5 单元测试过程 测试文档: 4.5 单元测试过程 测试计划内容: 概要:明确测试目的和主要任务,被测系统的简单描述,被测系统依赖的其它系统描述。 领域:定义测试和不需要测试的内容,描述与测试计划相关的重要术语和缩略语,测试场所。 测试内容。 建议的重大事件时间表:列出阶段性进度。 测试配置和环境。 测试执行:错误管理,测试周期等。 风险和意外事故:意外事件的对策。 更改记录:到目前为止对测试计划本身所作的更改和修订。 内容可包括:编号、更改人、更改内容、修订的发布时间等。 参考文档:项目开发计划。 4.5 单元测试过程 错误管理—缺陷的级别: 致命性错误(Critical) 数据丢失,数据计算错误、系统崩溃和经常死机。 严重功能性错误(Serious) 规定的功能没有实现或不完整、设计不合理造成性能低下,影响系统的运营 。 告警性错误(Moderate) 不影响业务运营的功能问题 。 建议性错误(Suggestion,Cosmetic) 软件设计和功能实现等不甚合理之处提出建议。 4.5 单元测试过程 错误管理-错误描述: 4.5 单元测试过程

文档评论(0)

光光文挡 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档