阅读以下说明,根据要求回答问题。
[说明]
某公司需开发一套通用信息管理系统。为保证开发进度和开发质量,对开发的全过程进行测试,重点对模块和系统性能进行测试。
模块测试主要从模块的五个方面进行检查:模块接口、局部数据结构、重要的执行路径、出错处理和边界条件。测试工程师对开发的模块进行测试时,做了以下几项工作:
A.检查变量名是否正确
B.检查错误提示与实际错误是否相符
C.检查模块的输入参数的个数与形参的个数是否匹配
D.检查n元数组第n个元素的处理是否正确
E.检查算符优先级是否正确
F.设计用以模拟被测模块的上级模块
G.设计用以模拟被测模块的下级模块
其中,______是模块接口检查;______是局部数据结构检查;______是重要的执行路径检查;______是出错处理检查;______是边界条件检查;______是驱动模块设计;______是桩模块设计。
参考答案:C A E B D F G
解析:单元测试(也称为模块测试)通常在编码阶段进行,是软件测试的最基本部分。单元测试对源程序的每一个程序单元进行测试,检查模块内部的错误,并验证每个模块是否满足系统设计说明书的要求。单元测试可以选用人工测试或机器测试。当使用机器测试时,一般采用白盒测试法。
在单元测试中,主要从模块的以下5个方面进行检查:模块接口、局部数据结构、重要的执行路径、出错处理和边界条件。
1.模块接口。正确地输入输出数据是模块进行其他测试的基础,因此在单元测试中要考查模块的接口。
2.局部数据结构。在单元测试中,为确保模块内的临时数据在程序执行过程中的完整性和正确性,必须仔细检查局部数据结构。
3.重要的执行路径。在单元测试中,对路径的测试是最基本的任务。由于不能进行穷举测试,因此需要精心设计用例,保证模块中每条语句至少执行一次,检查是否有计算、比较或控制流等方面的错误。
4.出错处理。一个好的算法设计应该能预测到各种出错的条件,并且有对出错进行处理的路径,以保证程序逻辑的正确性,便于用户维护。所以要对程序中所包含的出错处理通路进行测试。
5.边界条件。边界条件的测试是单元测试非常重要的工作。软件容易在边界出现错误,例如处理n元数组第n个元素时常常有错误。
由于模块不是独立运行的程序,各模块之间存在调用与被调用的关系,因此在对每个模块进行测试时,需要为被测模块编写一些测试模块来代替它的上级模块或下级模块。所编写的测试模块主要模拟与被测模块直接相关部分的功能,分为驱动模块与桩模块两种。驱动模块(driver)相当于一个主程序,它用于接收测试用例的数据,并将这些数据送到被测模块,被测模块被调用后,“主程序”输出测试结果,例如打印“进入—退出”信息等。桩模块(stub)代替被测模块所调用的予模块,利用它对被测模块的调用能力和输出数据进行测试,其内可进行少量的数据处理,目的是为了检验入口、输出调用和返回信息。