
软件测试过程分为四个阶段:单元测试、集成测试、系统测试和验收测试。
1、单元测试
单元测试又称模块测试、逻辑测试或结构测试,是检查软件设计的最小单元——程序模块或功能模块的正确性的测试。其目的是检查各程序单元能否正确实现详细设计指令中对模块功能、性能、接口、设计和设计约束的要求,并找出各模块内部可能存在的各种指令。
特点:单元测试以白盒技术为主,黑盒技术为辅。单元测试一般由开发人员自己完成,在开发组长的监督下进行。单元测试中使用的数据通常不使用真实数据。当被测单位要求操纵大量数据,且很多单位都有此需求时,可以考虑官方数据的较小代表性样本。
2、集成测试
集成测试也称为组装测试、综合测试或联合测试。通常情况下,在单元测试的基础上,所有的程序模块都是以有序、增量的方式进行测试的。集成是检查程序单元或组件的接口关系,逐步集成为符合概要设计要求的程序组件或整个系统。
特点:集成测试阶段,黑盒测试为主,白盒测试为辅。一般来说,测试人员是从开发团队中挑选出来的,并在开发团队领导的监督下进行。在集成测试过程中,一个独立的测试观察者监控测试工作。在集成测试过程中,应该邀请用户代表非正式地观看集成测试。集成一般不使用真实数据,测试人员可以手工制作一些有代表性的测试数据。
3、系统测试
系统测试是对集成的硬件和软件进行测试,以验证和确认系统是否达到了最初的目标。系统测试是检查完整的程序系统能否正确配置并与系统连接(包括计算机硬件、外设、网络、系统软件、支撑平台等。)在真实或模拟的系统运行环境中,与客户见面的需求。系统测试的主要依据是文件《系统需求规格说明书》。
特点:在系统测试阶段完全采用黑盒测试技术。系统测试由独立的测试团队在测试团队领导的监督下进行。在系统测试期间,一个独立的测试观察者监控测试工作。在系统测试期间,应邀请客户代表正式观看测试。同时,在正式验收测试之前,应获得用户的反馈,并尽可能满足客户要求。系统测试中使用的数据必须与真实数据一样准确,具有代表性,并且必须与真实数据的大小和复杂程度相当。如果不使用真实数据,应考虑真实数据的副本。
4、验收测试
验收测试又称交付测试,是在单元测试、集成测试和系统测试完成之后,产品发布之前的一项软件测试活动。验收测试分为测试和测试。Alpha测试是用户在开发环境下进行的测试,或者是公司内部用户在模拟实际运行环境下进行的受控测试;Beta测试是多个用户在一个或多个用户的实际使用环境中对软件进行的测试。
特点:在验收测试阶段也完全采用了黑盒测试技术。一般来说,验收测试是由用户进行的在测试团队的协助下。测试团队的领导负责确保在合理的质量控制和监督下,通过使用适当的测试技术进行充分的测试。测试人员帮助用户在验收测试中,与测试观察者一起,向用户解释测试用例的结果。只要有可能,在验收测试中应该使用真实数据。在不使用官方数据的情况下,应该考虑真实数据的复印件。








