background image

   
    黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要
求。 
    白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规
格要求,所有内部成分是否以经过检查。 

   
    软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑
盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,
检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒
测试主要是为了发现以下几类错误: 
    1、是否有不正确或遗漏的功能? 
    2、在接口上,输入是否能正确的接受?能否输出正确的结果? 
    3、是否有数据结构错误或外部信息(例如数据文件)访问错误? 
    4、性能上是否能够满足要求? 
    5、是否有初始化或终止性错误? 

   
    软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个
打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,
对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状
态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试主要是想对程序模块进行
如下检查: 
    1、对程序模块的所有独立的执行路径至少测试一遍。 
    2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。 
    3、在循环的边界和运行的界限内执行循环体。 
    4、测试内部数据结构的有效性,等等。 

   
    单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、
很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下
某个特定函数的行为。 

   
    单元测试是由程序员自己来完成,最终受益的也是程序员自己。可以这么说,程序员有
责任编写功能代码,同时也就有责任为自己的代码编写单元测试。执行单元测试,就是为了
证明这段代码的行为和我们期望的一致。 

   
    集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展。它的最简单的形式是:
两个已经测试过的单元组合成一个组件,并且测试它们之间的接口。从这一层意义上讲,组
件是指多个单元的集成聚合。在现实方案中,许多单元组合成组件,而这些组件又聚合成程
序的更大部分。方法是测试片段的组合,并最终扩展进程,将您的模块与其他组的模块一起
测试。最后,将构成进程的所有模块一起测试。 

   
    系统测试是将经过测试的子系统装配成一个完整系统来测试。它是检验系统是否确实能
提供系统方案说明书中指定功能的有效方法。(常见的联调测试) 

   
    系统测试的目的是对最终软件系统进行全面的测试,确保最终软件系统满足产品需求并