资源预览内容
第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
亲,该文档总共8页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
【习题】1.从供选择的答案中选出应填入下列( )中的字句。软件测试的目的是( A )。为了提高测试的效率,应该( B )。使用白盒测试方法时,确定测试数据应根据( C )和指定的覆盖标准。与设计测试数据无关的文档是( D )。软件的集成测试工作最好由( E )承担,以提高集成测试的效果。供选择的答案: A. 评价软件的质量 发现软件的错误 找出软件中的所有错误 证明软件是正确的 B. 随机地选取测试数据 取一切可能的输入数据作为测试数据 在完成编码以后制定软件的测试计划 选择发现错误的可能性大的数据作为测试数据 C. 程序的内部逻辑 程序的复杂程度 使用说明书 程序的功能 D. 该软件的设计人员 程序的复杂程度 源程序 项目开发计划 E. 该软件的设计人员 该软件开发组的负责人 该软件的编程人员 不属于该软件开发组的软件设计人员2.请从供选择的答案中选出应填入下列( )中的字句。程序的三种基本控制结构是( A )。它们的共同点是( B )。结构化程序设计的一种基本方法是( C )。软件测试的目的是( D )。软件调试的目的是( E )。供选择的答案: A. 过程,子程序,分程序 顺序,条件,循环 递归,堆栈,队列 调用,返回,转移 B. 不能嵌套使用 只能用来写简单的程序 已经用硬件实现 只有一个入口和一个出口 C. 筛选法 递归法 归纳法 逐步求精法 D. 证明程序中没有错误 发现程序中的错误 测量程序的动态特性 检查程序中的语法错误 E. 找出错误所在并改正之 排除存在错误的可能性 对错误性质进行分类 统计出错的次数 3.从下列关于软件测试的叙述中,选出5条正确的叙述。 (1) 用黑盒法测试时,测试用例是根据程序内部逻辑设计的。 (2) 尽量用公共过程或子程序去代替重复的代码段。 (3) 测试是为了验证该软件已正确地实现了用户的要求。 (4) 对于连锁型分支结构,若有n个判定语句,则有2n条路径。 (5) 尽量采用复合的条件测试,以避免嵌套的分支结构。 (6) GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。 (7) 发现错误多的程序模块,残留在模块中的错误也多。 (8) 黑盒测试方法中最有效的是因果图法。 (9) 在做程序的单元测试时,桩(存根)模块比驱动模块容易编写。 (10) 程序效率的提高主要应通过选择高效的算法来实现。4】从供选择的答案中选出同下列关于软件测试的各条叙述关系最密切的字句。 (1) 对可靠性要求很高的软件,例如操作系统,由第三者对源代码进行逐行检查。 (2) 已有的软件被改版时,由于受到变更的影响,改版前正常的功能可能发生异常,性能也可能下降。因此,对变更的软件进行测试是必要的。 (3) 在意识到被测试模块的内部结构或算法的情况下进行测试。 (4) 为了确认用户的需求,先做出系统的主要部分,提交给用户试用。 (5) 在测试具有层次结构的大型软件时,有一种方法是从上层模块开始,由上到下进行测试。此时,有必要用一些模块替代尚未测试过的下层模块。供选择的答案: A E: 仿真器 代码审查 模拟器 桩 驱动器 域测试 黑盒测试 原型 白盒测试 退化测试5】对小的程序进行穷举测试是可能的,用穷举测试能否保证程序是百分之百正确呢?6】在任何情况下单元测试都是可能的吗都是需要的吗【7】从供选择的答案中选出应填入下面有关软件测试的叙述的( )内的正确答案。软件测试方法可分为黑盒测试法和白盒测试法两种。黑盒测试法是通过分析程序的( A )来设计测试用例的方法。除了测试程序外,它还适用于对( B )阶段的软件文档进行测试。白盒测试法是根据程序的( C )来设计测试用例的方法。除了测试程序外,它也适用于对( D )阶段的软件文档进行测试。白盒法测试程序时常按照给定的覆盖条件选取测试用例。( E )覆盖比( F )覆盖严格,它使得每一个判定的每一条分支至少经历一次。( G )覆盖既是判定覆盖,又是条件覆盖,但它并不保证使各种条件都能取到所有可能的值。( H )覆盖比其他条件都要严格,但它不能保证覆盖程序中的每一条路径。单元测试一般以( I )为主,测试的依据是( J )。供选择的答案: A, C: 应用范围 内部逻辑 功能 输入数据 B, D: 编码 软件详细设计 软件总体设计 需求分析 E, F, G, H: 语句 判定 条件 判定/条件 多重条件 路径 I: 白盒法 黑盒法 J: 模块功能规格说明 系统模块结构图 系统需求规格说明【8】从供选择的答案中选出应该填入下列关于软件测试的叙述的( )内的正确答案。软件测试中常用的静态分析方法是( A )和( B )。( B )用于检查模块或子程序间的调用是否正确。分析方法(白盒方法)中常用的方法是( C )方法。非分析方法(黑盒方法)中常用的方法是( D )方法和( E )方法。( E )方法根据输出对输入的依赖关系设计测试用例。供选择的答案: A B: 引用分析 算法分析 可靠性分析 效率分析 接口分析 操作分析 C E: 路径测试 等价类 因果图 归纳测试 综合测试 追踪 深度优先 调试 相对图【9】下面是选择排序的程序,其中datalist是数据表,它有两个数据成员:一是元素类型为Element的数组V,另一个是数组大小n。算法中用到两个操作,一是取某数组元素Vi的关键码操作getKey ( ),一是交换两数组元素内容的操作Swap( ): void SelectSort ( datalist & list ) /对表list.V0到list.Vn-1进行排序, n是表当前长度。 for ( int i = 0; i list.n-1; i+ ) int k = i; /在list.Vi.key到list.Vn-1.key中找具有最小关键码的对象 for ( int j = i+1; j list.n; j+) if ( list.Vj.getKey ( ) list.Vk.getKey ( ) ) k = j; /当前具最小关键码的对象 if ( k != i ) Swap ( list.Vi, list.Vk ); /交换 (1) 试计算此程序段的McCabe复杂性; (2) 用基本路径覆盖法给出测试路径; (3) 为各测试路径设计测试用例。【10】根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。“一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。”【11】设要对一个自动饮料售货机软件进行黑盒测试。该软件的规格说明如下:“有一个处理单价为1元5角钱的盒装饮料的自动售货机软件。若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来。若投入的是2元硬币,在送出饮料的同时退还5角硬币。” (1) 试利用因果图法,建立该软件的因果图; (2) 设计测试该软件的全部测试用例。【12】对一个长度为100,000条指令的程序进行测试,记录下来的数据如下: 测试开始, 发现错误个数为0; 经过160小时的测试, 累计改正100个错误, 此时, MTTF = 0.4小时; 又经过160小时的测试, 累计改正300个错误, 此时, MTTF = 2小时; (1) 估计程序中固有的错误总数; (2) 为使MTTF达到10小时, 必须测试和调试这个程序多长时间 (3) 给出MTTF与测试时间t之间的函数关系。【13】应该由谁来进行确认测试是软件开发者还是软件用户为什么【习题解答】【1】A. B. C. D. E. 软件测试的目的是软件中的错误。因为不可能把所有可能的输入数据都拿来测试(时间花费不起),为了提高测试的效率,应该选择发现错误的可能性大的数据作为测试数据。使用白盒测试方法时,确定测试数据应根据程序的内部逻辑和指定的覆盖标准,可以不考虑程序的功能。与设计测试数据无关的文档是项目开发计划。软件的集成测试工作最好由不属于该软件开发组的软件设计人员承担,以提高集成测试的效果。【2】A. B. C. D. E. 1966年,Bohm与Jacopini提出任何单入口单出口的没有“死循环”的程序都能由三种最基本的控制结构构造出来。这三种基本控制结构就是“顺序结构”、“选择IFTHENELSE结构”、“重复DOWHILE或DOUNTIL结构”。 它们的共同点是只有一个入口和一个出口。E.W.Dijkstra提出了程序要实现结构化的主张,并将这一类程序设计称为结构化程序设计。这种方法的一个重要原则就是采用自顶向下、逐步求精的方法编写程序。N.Wirth曾做过如下说明:“我们对付一个复杂问题的最重要的方法就是抽象。 因此,对于一个复杂的问题,不要急于马上用计算机指令、数字和逻辑符号来表示它,而应当先用较自然的抽象的语句来表示,从而得到抽象的程序。抽象程序对抽象的数据类型进行某些特定的运算,并用一些合适的记号(可以是自然语言)来表示。下一步对抽象程序再做分解,进入下一个抽象的层次。这样的细化过程一直进行下去,直到程序能被计算机接受为止。此时的程序已经是用某种高级语言或机器指令书写的了。”软件调试则是在进行了成功的测试之后才开始的工作。它与软件测试不同,软件测试的目的是尽可能多地发现软件中的错误,但进一步诊断和改正程序中潜在的错误,则是调试的任务。调试活动由两部分组成: 确定程序中可疑错误的确切性质和位置。 对程序(设计,编码)进行修改,排除这个错误。【3】正确的叙述有(4)、(5)、(6)、(7)、(10)。黑盒测试主要是根据程序的有关功能规格说明和覆盖准则来设计测试用例,进行测试的,不是根据程序的内部逻辑来设计测试用例,这是白盒测试做的事情。在所有黑盒测试方法中,最有效的不是因果图法,而是边界值分析方法。测试的目的是尽可能多地发现软件中的错误,其附带的收获才是验证该软件已正确地实现了用户的要求。测试的一条重要原则是:发现错误多
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号