9 C.在意识到被测试模块的内部结构或算法的情况下进行测试。○8 D.为了确认用户的需求,先做出系统的主要部分,提交给用户试用。○E.在测试具有层次结构的大型软件时,有一种方法是从上层模块开始,由4 上到下进行测试。此时,有必要用一些模块替代尚未测试过的下层模块。○供选择的答案:
A?E: ① 仿真器 ② 代码审查 ③ 模拟器 ④ 桩 ⑤ 驱动器
⑥ 域测试 ⑦ 黑盒测试 ⑧ 原型 ⑨ 白
盒测试 ⑩ 退化测试
二、填空题:共4小题10个空格,每个空格2分,满分20分;请将答案填入指定的空白处。 1.
对面向过程的系统采用的集成策略有
___________________、___________________两种。 2.
软件测试主要分为___________________、
___________________、___________________、___________________四类测试。 3.
黑盒测试用例设计方法包括
___________________、___________________以及___________________,错误推测法等。
4. 测试工作就是进行输入、接受输出、检验结果,不深入代码细节,这样的测试方法称为________________,三、判断题:共10小题,每小题1分,满分10分;请将答案以“√”、“×”形式填入题后括号中。 1. 好的测试员不懈追求完美。( F )
-16-
2. 测试程序仅仅按预期方式运行就行了。( F ) 3. 不存在质量很高但可靠性很差的产品。( T )
4. 在没有产品说明书和需求文档的条件下可以进行动态黑盒测试。( T )
5. 静态白盒测试可以找出遗漏之处和问题。( T ) 6. 测试错误提示信息不属于文档测试范围。( F ) 7. 单元测试能发现约80%的软件缺陷。( T )
8. 代码评审是检查源代码是否达到模块设计的要求。9. 自顶向下集成需要测试员编写驱动程序。( F ) 10.
总是首先设计黑盒测试用例。( T )
四、名词解释;共5小题,每小题3分,满分15分 1.验收测试
2.失败测试
3.驱动模块
-17-
( T ) 4. 桩模块
5. 白盒测试
五、简答题:共3小题,每小题5分,满分15分。 1. 怎样做好文档测试?
2. 什么是软件测试?软件测试与调试有什么区别?
3. 软件测试包括哪些类型的测试?这些测试之间的区别是什么? 六、:综合题:共1小题,每小题20分,满分20分。
针对以下问题:某一种8位计算机,其十六进制常数的定义是以0x或0X开头的十六进制整数,其取值范围为-7f~7f(不区分大小写字母),如0x13、0x6A、-0x3c。请采用等价类划分的方法设计测试用例。
软件测试基础(D卷)答案及评分标准
一、 单选题(20×1=20分)
题号 答案 题号 1A ② 3 1B ④ 3 1C ① 3 1D ④ 3 1E ④ 3 2A 2B 2C 2D 2E ② ④ ④ ② ① 4A 4B 4C 4D 4E -18-
答案 (4) (5) (6) (7) (10) ② ⑩ ⑨ ⑧ ④
二、 填空题(20×1=20分) 1. 自顶向下集成、自底向上集成
2. 单元测试、集成测试、系统测试、验收测试 3. 等价类划分、边界值分析、因果图 4. 黑盒测试
三、 判断题(10×1=10分)
题号 1 2 3 4 5 6 7 8 9 10 答案 × × √ √ √ × √ √ × √ 四、 名词解释(5×3=15分) 1.验收测试
是软件产品完成了功能测试和系统测试之后,在产品发布之前所进行的软件测试活动。 2.失败测试
纯粹为了破坏软件而设计和执行的测试案例,被称为失败测试。 3.驱动模块
驱动模块就是用来代替主模块,用它来调用子模块 4. 桩模块
集成测试前要为被测模块编制一些模拟其下级模块功能的“替身”模块,以代替被测模块的接口,接受或传递被测模块的数据,这些专供测试用的“假”模块称为被测模块的桩模块。 5.白盒测试
-19-
也称为结构化测试、基于代码的测试,是一种测试用例设计方法,它从程序的控制结构导出测试用例。 五、 简答题(3×5=15分) 1.
仔细阅读,跟随每个步骤,检查每个图形,尝试每个示例。
检查文档的编写是否满足文档编写的目的 内容是否齐全,正确 内容是否完善 标记是否正确 2.
软件测试是为了发现错误而执行程序的过程。或者说,软件测试
是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。
软件测试与调试在目的、技术和方法等方面存在很大的区别,主要
表现在如下方面:
(1) 测试是为了发现软件中存在的错误;调试是为了证明软件开发的正确性。
(2) 测试以已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试一般是以不可知的内部条件开始,除统计性调试外,结果是不可预见的。
(3) 测试是有计划的,需要进行测试设计;调试是不受时间约束的。 (4) 测试经历发现错误、改正错误、重新测试的过程;调试是一个推理的过程。
(5) 测试的执行是有规程的;调试的执行往往要求开发人员进行必
-20-