【正确答案】软件测试方法一般分为两大类:动态测试方法与静态测试方法,而动态测试方法中又根据测试用例的设计方法不同,分为黑盒测试与白盒测试两类。
(1)静态测试。静态测试是采用人工检测和计算机辅助静态分析的手段对程序进行检测。
①人工检测。人工检测是不依靠计算机而是依靠人工审查程序或评审软件。人工审查程序偏重于编码质量的检验,而软件审查除了审查编码还要对各阶段的软件产品进行检验。人工检测可以发现计算机不易发现的错误,据统计,能有效地发现30/%~70/%的逻辑设计和编码错误,可以减少系统测试的总工作量。
②计算机辅助静态分析。利用静态分析工具对被测试程序进行特性分析,从程序中提取一些信息,以便检查程序逻辑的各种缺陷和可疑的程序构造。如用错的局部量和全程量、不匹配参数、不适当的循环嵌套和分支嵌套、潜在的死循环、不会执行到的代码等。还可能是提供一些间接涉及程序欠缺的信息、各种类型语句出现的次数,变量和常量的引用表、标识符的使用方式、过程的调用层次、违背编码规则等。静态分析中还可以用符号代替数值求得程序结果,以便对程序进行运算规律的检验。
(2)动态测试。动态测试是指通过运行程序发现错误。一般意义上的测试大多是指动态测试。为使测试发现更多的错误,需要运用一些有效的方法。测试任何产品,一般有两种方法:一是测试产品的功能,二是测试产品内部结构及处理过程。对软件产品进行动态测试时,也用这两种方法,分别称为“黑盒测试法”和“白盒测试法”。
【答案解析】