软件测试四阶段,单元测试、集成测试、系统测试、验收测试

软件测试的对象包括软件需求、概要设计、详细设计、软件运行环境、可运行程序和软件源代码等。软件测试包括质量、人员、资源、技术和流程五大要素,以及测试覆盖率和测试效率两个目标。

软件测试一般分为4个阶段:单元测试、集成测试、系统测试、验收测试。

一、单元测试 
单元测试是对软件中的最小可验证单元进行检查和验证。比如对Java中的类和方法的测试。

测试原则: 
1、尽可能保证测试用例相互独立(测试用例中不能直接调用其他类的方法,而应在测试用例中重写模拟方法); 
2、此阶段一般由软件的开发人员来实施,用以检验所开发的代码功能符合自己的设计要求。

单元测试的好处: 
1、尽早的发现缺陷; 
2、利于重构; 
3、简化集成; 
4、文档; 
5、用于设计。

单元测试的不足: 
1、不可能覆盖所有的执行路径,所以不可能保证捕捉到所有路径的错误; 
2、每行代码需要3~5行代码进行单元测试,存在投入与产出的平衡。

二、集成测试 
集成测试是在单元测试的基础上,把软件单元按照软件概要设计规格说明的规格要求,组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求。

集成测试包括BigBang、自顶向下、自底向上、核心系统集成、高频集成。

三、系统测试 
将经过集成测试的软件,作为计算机系统的一部分,与系统中其他部分结合起来,在实际运行环境下进行一系列严格有效的测试,以发现软件潜在的问题,保证系统的正常运行。

集成测试和系统测试之间的比较: 
1、测试内容:集成测试是测试各个单元模块之间的接口,系统测试是测试整个系统的功能和性能; 
2、测试角度:集成测试偏重于技术的角度进行测试,系统测试是偏重于业务的角度进行测试。

四、验收测试 
也称交付测试,是针对用户需求、业务流程进行的正式的测试,以确定系统是否满足验收标准,由用户、客户或其他授权机构决定是否接受系统。

验收测试包括alpha测试和beta测试,alpha测试是由开发者进行的软件测试,beta测试是由用户在脱离开发环境下进行的软件测试。

区别:

一、测试方法不同

1、单元测试属于白盒测试范畴。

2、集成测试属于灰盒测试范畴。

3、系统测试属于黑盒测试范畴。

二、考察范围不同

1、单元测试主要测试单元内部的数据结构、逻辑控制、异常处理等。

2、集成测试主要测试模块之间的接口和接口数据传递关系,以及模块组合后的整体功能。

3、系统测试主要测试整个系统相对于需求的符合度。

三、评估基准不同

1、单元测试的评估基准主要是逻辑覆盖率。

2、集成测试的评估基准主要是接口覆盖率。

3、系统测试的评估基准主要是测试用例对需求规格的覆盖率。

发布了407 篇原创文章 · 获赞 150 · 访问量 38万+

猜你喜欢

转载自blog.csdn.net/ds1130071727/article/details/102807646