软件测试的对象包括软件需求、概要设计、详细设计、软件运行环境、可运行程序和软件源代码等。软件测试包括质量、人员、资源、技术和流程五大要素,以及测试覆盖率和测试效率两个目标。
软件测试一般分为4个阶段:单元测试、集成测试、系统测试、验收测试。
一、单元测试
单元测试是对软件中的最小可验证单元进行检查和验证。比如对Java中的类和方法的测试。
测试原则:
1、尽可能保证测试用例相互独立(测试用例中不能直接调用其他类的方法,而应在测试用例中重写模拟方法);
2、此阶段一般由软件的开发人员来实施,用以检验所开发的代码功能符合自己的设计要求。
单元测试的好处:
- 1、尽早的发现缺陷;
- 2、利于重构;
- 3、简化集成;
- 4、文档;
- 5、用于设计。
单元测试的不足:
- 1、不可能覆盖所有的执行路径,所以不可能保证捕捉到所有路径的错误;
- 2、每行代码需要3~5行代码进行单元测试,存在投入与产出的平衡
。
二、集成测试
集成测试是在单元测试的基础上,把软件单元按照软件概要设计规格说明的规格要求,组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求。
集成测试包括BigBang、自顶向下、自底向上、核心系统集成、高频集成。
三、系统测试
将经过集成测试的软件,作为计算机系统的一部分,与系统