软件测试_单元测试
单元测试内容:
- 模块接口测试:
- 调用所测模块时的输入参数于模块的形式参数在个数、属性、顺序上是否匹配
- 所测模块调用子模块时,它输入子模块的参数与子模块的形式参数在个数、属性、顺序上是否匹配
- 输出给标准函数的参数在个数、属性、顺序上是否匹配
- 全局变量的定义在各模块是否一致
- 调用所测模块时的输入参数于模块的形式参数在个数、属性、顺序上是否匹配
- 局部数据结构测试:
- 检查不正确或者不一致的数据类型说明
- 使用尚未赋值或尚未初始化的变量
- 错误的初始化或者默认值
- 变量名拼写错误或书写错误
- 不一致的数据类型
- 检查不正确或者不一致的数据类型说明
- 路径测试:
- 运算的有限次序不正确或者误解了运算的有限次序
- 运算的方式错误(运算的对象彼此在类型上不相容)
- 算法错误
- 初始化不正确
- 运算精度不够
- 表达式的符号表示不正确等
- 不同数据类型的比较
- 不正确的逻辑运算或优先次序
- 因浮点运算精度问题而造成的两值比较不等
- “差1错”即不能正确地多循环或者少循环一次
- 错误的或不能的循环终止条件
- 当遇到发散的迭代时不能终止循环
- 不适当地修改了循环变量
- 错误处理测试
- 出错的描述难以理解
- 出错的描述不足以对错误定位和确定出错原因
- 显示的错误与实际错误不服
- 对错误条件的处理不正确
- 在对错误进行处理之前,错误条件已经引起系统的干预
- 如果出错情况不予考虑,那么检查恢复正常后的模块可否正常工作
- 边界测试
单元测试的类型:
- 逻辑单元测试
- 集成单元测试
- 功能单元测试
单元测试的作用:
- 编写单元测试可以帮助开发人员书写更高质量的代码
- 编写单元测试可使开发人员更有信心重构应用程序,去拥抱变化