单元测试总结
单元测试目的
单元测试的目的在于发现各模块内部可能存在的各种错误,主要是基于白盒测试
- 验证代码是与设计相符合的;
- 发现设计和需求中存在的错误;
- 发现在编码过程中引入的错误。
测试从三个角度来考虑
- 针对文档的测试
- 针对代码的测试
- 针对文档和代码是否致的测试
单元测试环境***:
被测单元:被测试的单元。
驱动单元:本身就是一段代码,用来调用被测单元。
桩单元:被被测单元所调用的单元。
**测试数据: **输入和输出数据(测试用例)
·驱动单元的功能(作用):
·自身能运行
·能够接收测试数据
·能够传值给被测单元(调用被测单元),即输入
·能够判断测试结果。 即输出。
·桩单元:是用来替代被测单元中的子单元(被被测单元所调用)的。
为什么需要桩单元:
·子单元的功能好坏会影响到被测单元。
·子单元可能还没有被开发。
·桩单元的作用:
按照详细设计文档的功能定义(接口定义)去模拟子单元的实现。
一般来说,桩单元自身是不会有复杂的处理逻辑,只会有简单的接收、判断和返回。
桩单元一般可以用来实现隔离测试。
单元测试的策略有三种:
·孤立的策略:
·自顶向下的策略:
·自底向上的策略:
单元测试策略的选择是取决于开发的策略和时间的。
单元测试的四个阶段
- 单元测试计划阶段:完成单元测试计划
- 单元测试设计阶段:完成单元测试方案
- 单元测试实现阶段:完成单元测试用例、单元测试规程、单元测试脚本及数据文件
- 单元测试执行阶段:执行单元测试用例,修改发现的问题并进行回归测试,提交单元测试报告
单元测试基本原则
1、对全新的代码或修改过的代码进行单元测试。
代码修改:
- 针对缺陷进行修改
- 代码优化
- 无论是哪种修改,如果改动很小,需要进行回归测试:如果改动很大,需要重新设计单元测试用例来进行测试。
2、单元测试根据单元测试计划和方案进行,排除测试的随意性。
3、必须保证单元测试计划、单元测试方案、单元测试用例等经过评审。
4、当测试用例的测试结果与预期结果不一致时,单元测试的执行人员需如实记录实际的测试结果。