欢迎来到天天文库
浏览记录
ID:13378008
大小:621.50 KB
页数:10页
时间:2018-07-22
《软件单元测试工作指南》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、作者:白红勃软件单元测试工作指南1.简介1.1目的本文详细阐述了进行单元测试流程,指导项目开发人员如何开展软件单元测试。1.2范围开发过程的软件项目的单元测试。参考文件定义与缩写SQA软件质量保证2.单元测试流程2.1简介单元测试是对最小的可测试软件元素(单元)实施的测试,它所测试的内容包括单元的内部结构(如逻辑和数据流)以及单元的功能和可观测的行为。使用白盒测试方法测试单元的内部结构,使用黑盒测试方法测试单元的功能和可观测的行为。由于开发方式的不同,单元的划分存在一些差异,一般的单元划分方法如下:1.面向对象的软件开发:以Class(类)作为测试的最小单元。以方法的内部结构作为测试的重点。
2、2.结构化的软件开发:以模块(函数、过程)作为测试的最小单元。2.2单元测试的工作体系软件测试工作目前由中央研究院技术委员会产品评测部担任。需要项目组相关角色配合完成。单元测试中的角色:(这是指的什么呢)角色职责设计员制定和维护单元测试计划,设计单元测试用例及单元测试过程,生成测试评估报告。设计测试需要的驱动程序和桩。根据单元测试发现的缺陷提出变更申请。编码员编写测试驱动程序和稳定桩,执行单元测试。配置管理员负责对测试工件进行配置管理。2.3单元测试工作内容及其流程活动输入输出参与角色和职责制定单元测试计划设计模型实施模型单元测试计划(该计划可以不是一个独立的计划,可包含在实施计划中)设计员
3、负责制定单元测试计划设计单元测试单元测试计划设计模型单元测试用例设计单元测试驱动模块作者:白红勃实施模型设计单元测试桩模块设计员负责设计单元测试用例,设计驱动程序和桩,实施单元测试单元测试用例单元测试驱动模块单元测试桩模块编码员负责编写测试驱动程序和稳定桩。执行单元测试实施模型单元测试计划单元测试用例被测试单元单元测试驱动模块和桩模块测试结果编码员执行测试并记录测试结果评估单元测试单元测试计划测试结果测试评估摘要设计员负责评估此次测试,并生成测试评估摘要。单元测试工作流程:Designer:开发设计模型、实施模型Designer:制定单元测试计划,设计单元测试用例,设计驱动程序和桩Imple
4、menter:实施驱动程序和桩,执行单元测试,生成测试日志缺陷变更流程Designer&Implementer:提出变更请求Designer:评估单元测试,生成评估摘要单元测试环境:作者:白红勃1.1单元测试需求的获取单元测试需求所确定的是单元测试的内容,单元测试需求是需求根据DesignModel、ImplementModel和软件单元获取。1.2编码人员如何如何进行单元测试进行单元测试主要采用编码员之间交叉测试,因为通常编码人员比较容易发现其他人员编写代码中的缺陷,所以必须采用交叉测试。1.3单元测试产生的工件清单1、软件单元测试计划2、单元测试用例3、测试过程4、测试脚本5、测试日志6
5、、测试评估摘要2.单元测试技术单元测试技术从整体上分为白盒测试与黑盒测试,其中前者使用程序设计的控制结构导出测试用例,针对程序的内在结构(逻辑、数据流),后者目的是验证单元实现的功能,而不需要知道程序是如何实现它们的。黑盒测试关注的是单元的输入与输出,不是白盒测试的替代品,而是辅助白盒测试发现其他类型的错误。2.1白盒测试2.1.1为什么要进行白盒测试?如果所有软件错误的根源都可以追溯到某个唯一原因,那么问题就简单了。然而事实上一个bug常常是由多个因素共同导致的,如下图所示。作者:白红勃假设此时开发工作已经结束,程序送交到测试组,没有人知道代码中有一个潜在的被0除的错误。测试组采用测试用例
6、按照如下由蓝色和绿色标记的路径进行测试,显然测试工作似乎非常完善,测试用例覆盖了所有执行语句,没有被0除的错误发生。但是,当客户在接到该产品并使用的过程中,执行了如下红色标记所示的路径时,错误发生了作者:白红勃从本例可以看到,如果不对程序内部的逻辑结构做分析,则设计的测试用例可能无法发现内部潜在的错误。1.1.1怎样做独立路径测试?从上面的例子还看出尽管做了语句覆盖,但是程序仍然可能存在错误。语句覆盖是一种最弱的覆盖测试,但却是一种必须做的最低限度的白盒测试。独立路径测试可以保证所有语句被执行至少一次,同时排除上述(x=0,y=5/x)组合没有被执行的情况。在进行独立路径测试(基本路径测试)
7、之前,先介绍流图符号:如上图所示,每一个圆,称为流图的节点,代表一个或多个语句,流程图中的处理方框序列和菱形决策框可映射为一个节点,流图中的箭头,称为边或连接,代表控制流,类似于流程图中的箭头。一条边必须终止于一个节点,即使该节点并不代表任何语句,例如,下图中两个处理方框交汇处是一个节点,边和节点限定的范围称为区域。作者:白红勃任何过程设计表示法都可被翻译成流图,下面显示了一段流程图以及相应的流图。作者:白红
此文档下载收益归作者所有