Please enable JavaScript.
Coggle requires JavaScript to display documents.
第四章 单元测试 - Coggle Diagram
第四章 单元测试
单元测试同集成测试和系统测试的区别
测试方法
单元测试:白盒
集成测试:白盒、黑盒
时间
单元测试:早
集成测试:晚
系统测试:在集成测试之后(晚)
主要内容
单元测试:程序(模块内)
集成测试:接口、组合
测试人员
单元测试:开发人员
系统测试:用户
错误定位
单元测试:易
系统测试:难
单元测试的过程
代码编制
代码审查
准备阶段
单元测试
评审提交
单元测试的定义
在软件开发过程中要进行的
最低级别
的测试活动,针对软件设计的最小单位——程序模块,进行正确性检验的测试工作
目的:发现每个程序模块内部可能存在的差错
方式
人工静态检查
动态执行跟踪
误区
单元测试是一种浪费时间的工作
单元测试只能证明代码做了什么(无规格说明)
可以不进行单元测试
集成测试能捕捉到所以后BUG
单元测试的成本效率不高
单元测试的用例设计方法
测试完整性度量以白盒测试为主
测试用例的四个关键元素
输入数据
实际测试代码
初始状态声明
期望输出结果
测试用例的设计步骤
正面测试
负面测试
使被测单元运行
模块设计需求中其他测试特性用例设计
覆盖率测试用例设计
测试执行
完善代码覆盖
面向对象应用程序的单元测试用例设计
功能性测试
类层次
protected
private
public
方法层次
结构性测试
类作为一个单元来进行测试
基于对象——状态转移图的OO软件测试
结点:表示对象的某个可能状态
有向边:“事件/动作”
单元测试环境的组成
建立原因:一个模块或一个方法与外界的联系是必然的
辅助模块 :(用于测试与所测试模块相联系的其他模块)
驱动模块:相当于所测试的主程序
桩模块:用于代替所测模块调用的子模块
所测模块和与它相关的驱动模块及桩模块共同构成了一个“测试环境”
单元测试的策略
单元测试的测试技术
白盒测试
状态转换测试
静态测试
非功能测试
功能测试
策略
自顶向下的单元测试策略
优点:可以提供早期的集成路径
要做桩模块,成本高于孤立的单元测试成本
自底向上的单元测试策略
不需要单独设计桩模块
相对较合理
孤立的单元测试测略
可并行,测试时间短
不能提供早期集成路径,增加了额外的测试成本
综合测试
综合考虑自底向上测试策略和孤立测试策略
单元测试的分析方法
不能仅仅测试最理想的情况
结果是否正确?
边界条件