单元测试
2015-11-16 17:03
190 查看
单元测试是对软件基本组成单元进行的测试。单元测试的对象是软件设计的最小单位——模块。
单元测试的目标:确保各单元模块被正确的编码。
单元测试的主要任务有:模块接口测试、模块局部数据结构测试、模块边界条件测试、模块中所有独立执行通路测试、模块的各条错误处理通路测试
1.模块接口测试
只有在数据能够正确流入、流出模块的前提下,其测试才有意义。对模块接口的检查和确认是单元测试的基础。
输入的实际参数与形式参数的个数是否相同、属性是否匹配、量纲是否一致
调用其他模块时所给实际参数的个数是否与被调用模块的形参个数相同、属性是否匹配、量纲是否一致
调用预定义函数时所用参数的个数、属性和次序是否正确
是否存在与当前接口入口点无关的参数引用
是否修改了只读性参数
对全程变量的定义各模块是否一致
是否把某些约束作为参数传递
如果模块内包括外部输入输出,还应考虑下列因素。
文件属性是否正确
OPEN/CLOSE语句是否正确
格式说明与输入输出语句是否匹配
缓冲区大小与记录长度是否匹配
文件使用前是否打开
是否处理了文件尾
是否处理了输入输出错误
输出信息中是否有文字性错误
2.模块局部数据结构测试
检查局部数据是为了保证临时存储在模块内的数据在程序执行过程中完整、正确。错误:
不合适或不相容的类型说明
变量无初值
变量初始化或默认只有错
不正确的变量名(拼错或不正确的截断)
出现上溢、下溢和地址异常
3.模块边界条件测试
边界测试是单元测试中最重要的一项任务。因为软件经常在边界上失效,采用边界值分析技术,针对边界值及其左、右设计测试用例,有可能发现新的错误。
4.模块中所有的独立执行通路测试
在模块中应对每一条独立执行路径进行测试,单元测试的基本任务是保证模块中每条语句至少能被执行一次,此是设计测试用例是为了发现因错误计算、不正确的比较和不适当的
单元测试的目标:确保各单元模块被正确的编码。
单元测试的主要任务有:模块接口测试、模块局部数据结构测试、模块边界条件测试、模块中所有独立执行通路测试、模块的各条错误处理通路测试
1.模块接口测试
只有在数据能够正确流入、流出模块的前提下,其测试才有意义。对模块接口的检查和确认是单元测试的基础。
输入的实际参数与形式参数的个数是否相同、属性是否匹配、量纲是否一致
调用其他模块时所给实际参数的个数是否与被调用模块的形参个数相同、属性是否匹配、量纲是否一致
调用预定义函数时所用参数的个数、属性和次序是否正确
是否存在与当前接口入口点无关的参数引用
是否修改了只读性参数
对全程变量的定义各模块是否一致
是否把某些约束作为参数传递
如果模块内包括外部输入输出,还应考虑下列因素。
文件属性是否正确
OPEN/CLOSE语句是否正确
格式说明与输入输出语句是否匹配
缓冲区大小与记录长度是否匹配
文件使用前是否打开
是否处理了文件尾
是否处理了输入输出错误
输出信息中是否有文字性错误
2.模块局部数据结构测试
检查局部数据是为了保证临时存储在模块内的数据在程序执行过程中完整、正确。错误:
不合适或不相容的类型说明
变量无初值
变量初始化或默认只有错
不正确的变量名(拼错或不正确的截断)
出现上溢、下溢和地址异常
3.模块边界条件测试
边界测试是单元测试中最重要的一项任务。因为软件经常在边界上失效,采用边界值分析技术,针对边界值及其左、右设计测试用例,有可能发现新的错误。
4.模块中所有的独立执行通路测试
在模块中应对每一条独立执行路径进行测试,单元测试的基本任务是保证模块中每条语句至少能被执行一次,此是设计测试用例是为了发现因错误计算、不正确的比较和不适当的
相关文章推荐
- CSS 正传
- 关于SVN提交强制加入注释
- centos 6.4 升级 python 安装pip
- 项目三——图遍历算法实现
- 第八周 项目5 计数的模式匹配
- Redis学习笔记(一)
- ntpdate时间同步服务无法同步时间
- 全排列的递归与非递归
- thinkPHP上传文件问题
- nodejs npm gulp bower 几点
- 控件,App.config文件,数据库,之间的联系
- 使用注解为HibernateDaoSupport注入sessionFactory
- 度量系统服务端文件本地异地差异备份(增量备份)脚本示例
- Excel常用技巧
- 根据身份证号获取地址
- 动态生成一维数组和二维数组
- 项目3-- 图遍历算法实现
- SQL.Orcale中的to_date()/to_char()/to_number()的用法
- WIN10去除、恢复6个文件夹(视频、图片、文档、下载、音乐、桌面)的方法
- 平衡二叉树