软件单元测试(静态动态测试)设计.doc

软件单元测试(静态动态测试)设计.doc

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

软件单元测试(静态、动态测试)设计 1测试范围 本文档针对XXXXX软件单元测试。单元函数或。单元测试是针对软件设计的最小单位——程序模块函数或,进行正确性检验的测试工作。单元测试的依据是详细设在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。其目的在于发现每个程序模块内部可能存在的差错。单元测试是软件测试的基础单元测试工作主要分为两个步骤静态和动态。静态测试包括代码检查、静态结构分析、等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。通过设计测试用例,执行待测程序来跟踪比较实际结果与预期结果来发现错误。经验表明,使用静态法能够有效的发现30%到70%的逻辑设计和编码错误。但是代码中仍会有大量的隐性错误无法通过视觉检查发现,必须通过才能够捕捉到。所以,动态也成了单元测试的重点与难点。 4.1.3数据流分析 检查数据流异常情况,利用TestBed测试工具完成。TestBed的Static Data Flow Analysis功能能对以下数据流异常情况(基于工程)进行报告: UR 声明后没有定义就被引用 DU 定义后没有被引用 DD 两次定义之间没有被引用 4.1.4控制流分析 以有向图的方式表示函数内部控制流图(控制流图显示一个函数的逻辑结构,它由许多节点组成,一个节点代表一条语句或数条语句(单入单出,无分支),连接结点的叫边,边表示节点间的控制流向。)利用TestBed测试工具Static Flowgraph可以图形化显示函数内部控制流图,确认其与函数设计流程一致。 检查是否有不可达代码,利用TestBed测试工具LCSAJ分析完成 4.1.5检查表 检查项 检查的逻辑正确性;所编写的代码算法、数据结构定义(如:队列、堆栈等)是否实现了所要求的功能 ? ?利用TestBed测试工具代码规则检查(其中包含数据流分析规则列表)完成 输入参数有没有作正确性检查;如果没有作正确性检查,确定该参数是否的确无需做参数正确性检查,否则请添加上参数的正确性检查。 ? ? 函数内部注释是否完整,是否清晰简洁;是否正确的反映了代码的功能;是否做了多余的注释。 ? 函数静态调用关系图是否和设计一致 ?通过观察TestBed测试工具static Callgraph实现 … ? 4.1.6代码走读 根据检查表各项,以及以上各测试方法的要求通过测试工具TestBed并辅以人工方式对代码进行走读,得到各项分析结果。另外对一些关键模块,例如xxxxxx通信,以及一些和硬件紧密结合的软件模块,组织开发组、测试组及专家组对代码进行逐行走读讨论。 注:以上各项利用TestBed进行分析时均需辅以人工方式协同完成。 4.1.7 猜错分析 模块代码应能预见出错的条件,并设置适当的出错处理,以便在一旦程序出错时,能对出错程序重做安排,保证其逻辑的正确性,这种出错处理应当是模块功能的一部分。测试人员应检查模块代码是否对错误逻辑输入进行检验,对错误条件的处理是否正确等以分析模块的错误处理功能是否包含缺陷。 4.2动态测试 4.2.1测试方案 单元测试是一个在隔离状态下测试单个独立软件单元的过程,如下图所示: 图 单元测试 应为测试开发一个驱动(driver)和(或)若干个桩(stub)。驱动在大多数场合称为“主程序”, 相当于所测的主程序。它接收测试数据,把这些数据传送给所测,最后再输出实际测试结果。桩被测试的函数要调用另外一个函数,要建立一个被调用函数的替代函数驱动和桩是测试使用的软件,而不是软件产品的组成部分,但它需要一定的开发费用。所测与它相关的驱动模块及桩模块共同构成了一个“测试环境”, 图 单元测试的测试环境通常需要做如下三项工作:1. 设计测试用例;2. 编写测试驱动与桩模块;3. 执行测试,记录并分析结果。测试用例应由测试输入数据和与之对应的预期输出结果这两部分组成测试用例应该包括输入参数的条件边界(if, while,for,switch 子句等)。错误推测法列举出程序中所有可能的错误和容易发生错误的特殊情况,根据它们选择测试用例设计足够的测试用例,使得程序中的每个判定至少都获得一次“真值”或“假值”,或者说使得程序中的每一个取“真”分支和取“假”分支至少经历一次构造一组测试用例,使得每一判定语句中每个逻辑条件的可能值至少满足一次。

文档评论(0)

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

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

1亿VIP精品文档

相关文档