(4)在程序修改之后,要进行回归测试 对程序的任何修改都有可能引入新的错误,所以必须进行回归测 试,即将以前的所有测试用例再次输入测试,而不是仅仅测试以前结 果不正确的测试用例。回归测试有助于发现由于修改程序而引入的新 错误。 (5)对发现错误较多的程序段,应进行深入的测试。 如果发现某个程序段错误较多,则表明这个程序段质量很低,有 可能隐藏有更多的错误,应该进行深入的测试
(4) 在程序修改之后,要进行回归测试。 对程序的任何修改都有可能引入新的错误,所以必须进行回归测 试,即将以前的所有测试用例再次输入测试,而不是仅仅测试以前结 果不正确的测试用例。回归测试有助于发现由于修改程序而引入的新 错误。 (5) 对发现错误较多的程序段,应进行深入的测试。 如果发现某个程序段错误较多,则表明这个程序段质量很低,有 可能隐藏有更多的错误,应该进行深入的测试
613测试方法 软件测试方法有多种,这些测试方法具有不同的思路和 出发点。总的来说,测试方法可分为静态测试方法和动态测 试方法两大类。 所谓静态测试方法,是指不在计算机上运行被测试程序, 而是采用其它手段达到对程序进行检测目的的测试方法。静 态测试方法包括人工测试方法和计算机辅助静态分析方法。 所谓动态测试方法,是指在计算机上运行被测试程序, 并用所设计的测试用例对程序进行检测的方法。动态测试方 法根据设计测试用例的思想不同可分为白盒测试、黑盒测试 以及穷举测试等
6.1.3 测试方法 软件测试方法有多种,这些测试方法具有不同的思路和 出发点。总的来说,测试方法可分为静态测试方法和动态测 试方法两大类。 所谓静态测试方法,是指不在计算机上运行被测试程序, 而是采用其它手段达到对程序进行检测目的的测试方法。静 态测试方法包括人工测试方法和计算机辅助静态分析方法。 所谓动态测试方法,是指在计算机上运行被测试程序, 并用所设计的测试用例对程序进行检测的方法。动态测试方 法根据设计测试用例的思想不同可分为白盒测试、黑盒测试 以及穷举测试等
1.人工测试方法 人工测试方法是指依靠人而不是计算机来对程序进行检测的方法 人工测试可以找出计算机测试不容易发现的错误,可以减少系统测试 的总工作量。根据统计,人工测试能有效地发现30%70%的逻辑设计 和编码错误。 人工测试可以采用人工运行和代码审查的方式。代码审查可以由 程序编写者本人非正式地进行,也可以由审查小组正式进行。代码审 査主要是对照常见程序错误清单对程序代码进行分析审査,并将发现 的错误记录下来 表61是由 Myers提供的常见程序错误清单,该表主要针对 FORTRAN一类的程序设计语言所编写的程序,其它的程序设计语言 编写的程序也可参照该清单。表中的参数相当于C语言中函数的形式 参数,而变元相当于C语言中函数调用时的实际参数
1. 人工测试方法 人工测试方法是指依靠人而不是计算机来对程序进行检测的方法。 人工测试可以找出计算机测试不容易发现的错误,可以减少系统测试 的总工作量。根据统计,人工测试能有效地发现30%~70%的逻辑设计 和编码错误。 人工测试可以采用人工运行和代码审查的方式。代码审查可以由 程序编写者本人非正式地进行,也可以由审查小组正式进行。代码审 查主要是对照常见程序错误清单对程序代码进行分析审查,并将发现 的错误记录下来。 表6.1是由Myers提供的常见程序错误清单,该表主要针对 FORTRAN一类的程序设计语言所编写的程序,其它的程序设计语言 编写的程序也可参照该清单。表中的参数相当于C语言中函数的形式 参数,而变元相当于C语言中函数调用时的实际参数
表61 Myers提供的常见程序错误清单 、模块接口检査表 模块接收的输入参数个数与模块的变元个数是否一致? 2参数与变元的属性是否匹配? 3.参数与变元所用的单位是否一致? 4传送给被调用模块的变元的数目是否等于那个模块的参数的数目? 5传送给被调用模块的变元属性和参数的属性是否一致? 6传送给被调用模块的变元的单位和参数的单位是否一致? 7传送给内部函数的变元属性、数目和次序是否正确? 8是否修改了只是作为输入用的变元? 9全程变量的定义在各个模块中是否一致? 10有没有把常数当作变量来传送?
表6.1 Myers提供的常见程序错误清单 一、模块接口检查表 1.模块接收的输入参数个数与模块的变元个数是否一致? 2.参数与变元的属性是否匹配? 3.参数与变元所用的单位是否一致? 4.传送给被调用模块的变元的数目是否等于那个模块的参数的数目? 5.传送给被调用模块的变元属性和参数的属性是否一致? 6.传送给被调用模块的变元的单位和参数的单位是否一致? 7.传送给内部函数的变元属性、数目和次序是否正确? 8.是否修改了只是作为输入用的变元? 9.全程变量的定义在各个模块中是否一致? 10.有没有把常数当作变量来传送?
、完成外部输入/输出时的检査表 4.文件属性是否正确? 2打开文件语句是否正确? 3格式说明与输入输出语句给出的信息是否一致? 4缓冲区大小与记录大小是否匹配? 5是否所有文件在使用前都已打开了? 6对文件结束条件的判断和处理是否正确? 7对输入/输出错误的处理是否正确? 8.输出信息中有没有正文错误?
二、完成外部输入/输出时的检查表 4. 文件属性是否正确? 2.打开文件语句是否正确? 3.格式说明与输入/输出语句给出的信息是否一致? 4.缓冲区大小与记录大小是否匹配? 5.是否所有文件在使用前都已打开了? 6.对文件结束条件的判断和处理是否正确? 7.对输入/输出错误的处理是否正确? 8.输出信息中有没有正文错误?