目录
(1)单元测试是一种对构成软件的最小功能组件代码进行的功能测试
如C语言中一个函数单元,Java程序中一个类,图形化的软件中一个窗口或一个菜单功能等
(2)集成测试是指将多个相关功能模块组装构成的子系统或系统所进行的集成接口测试
5.1 单元测试目标与任务
一、为什么要进行单元测试
软件系统是由许多基本单元构成,这些单元可能是一个类程序or更大的单元(组件或模块)
要保证软件系统的质量,首先需要确保构成系统的单元程序质量
只有通过充分的单元测试,发现并修改单元程序中的缺陷,从而为系统质量打下基础
·单元测试发现问题比较容易
·修正问题更容易
二、单元测试的目标和内容
1、目标:确保单元程序的规范性、正确性、安全性、可靠性
2、内容:
(1)数据能否正确地流入、流出单元程序
(2)在单元程序运行过程中,其内部数据能否保持其完整性,包括内部数据的形式、内容及相互关系不发生
错误,全局变量在单元中的处理和影响符合预期
(3)数据边界处理能否正确工作
(4)单元程序的运行流程能否做到满足特定的逻辑分支覆盖
(5)单元程序中发生异常,是否有出错处理
(6)单元程序中指针是否正确引用、资源是否及时被释放
(7)单元程序是否有安全隐患
三、单元测试的基本活动
(1)建立单元测试环境
(2)测试脚本开发和调试
(3)测试执行及其结果分析
四、单元测试关注内容
(1)测试目标 :确保单元程序被正确地编码
(2)测试依据 :单元程序详细设计描述
(3)测试过程 :单元测试用例设计、单元测试脚本开发、单元测试脚本执行和结果分析
(4)测试执行者 :编程人员和测试人员
(5)测试方法 :黑盒测试与白盒测试
(6)测试脚本管理 :代码配置管理
(7)测试结果分析评估:代码覆盖率、分支或条件覆盖率
五、单元测试判断准则
(1)软件单元功能与设计需求一致
(2)软件单元接口与设计需求一致
(3)能够正确处理输入和运行的错误
(4)在单元测试中发现的错误得到修改并且通过回归测试
(5)达到相关的测试覆盖率
(6)完成软件单元测试报告
六、单元测试的任务
1、单元程序的路径测试
测试单元程序每一条执行路径的代码,并保证每条语句被正确执行,检查如下问题:
(1)误解或用错了运算符优先级 (2)混合类型运算 (3)变量初值错
(4)精度不够 (5)表达式符号错 (6)逻辑判断错误
(7)路径是否被覆盖 (8)循环终止条件错误 (9)其它
2、局部数据结构测试
检查局部数据结构完整性。
(1)不适合或不相容的类型说明 (2)变量无初值 (3)变量初始化或默认值有错
(4)不正确的变量名或从来未被使用过 (5)出现上溢或下溢和地址异常 (6)其它