如果测试人员对被测试的程序内部的逻辑结构和处理过程很熟悉,即被测试的程序内部结构和流向是可见的,或者说是已知的,那么可以按照程序内部的逻辑结构信息设计或选择测试用例,检验程序中的每条逻辑路径是否都能按“需求规格说明书”预定的要求正确工作。这一测试方法把测试对象看作一个打开的盒子,通常形象地称其为白盒测试。
将程序看作一个不能打开的盒子(即程序的内部实现对测试人员是不可见的),在不完全考虑程序内部结构和内部特性的情况下,从程序拟实现的功能出发选取测试用例,利用程序接口测试程序的外部行为,它只检查程序功能是否按照“需求规格说明书”的规定正常使用,检查程序是否能正确地接受输入数据并针对相应的输入信息产生正确的输出信息。