《软件测试基础》期末试卷及参考答案.doc_第1页
《软件测试基础》期末试卷及参考答案.doc_第2页
《软件测试基础》期末试卷及参考答案.doc_第3页
《软件测试基础》期末试卷及参考答案.doc_第4页
《软件测试基础》期末试卷及参考答案.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、判定覆盖设计足够多的测试用例,使得被测试程序中的每个判断的“真”、“假”分支_至少被执行一次。2、黑盒测试的具体技术方法 _、 _、 _、_。等价类划分法,边界值分析法,决策表法,因果图法3、黑盒测试又称之为_测试。功能4、等价类划分有两种不同的情况:_和_。有效等价类,无效等价类5、根据覆盖目标的不同,逻辑覆盖又可分为:_,_,_,_,条件组合覆盖,判断/条件覆盖。语句覆盖,判定覆盖,条件覆盖,路径覆盖6、根据软件生命周期中的定义,可以把自动化测试工具划分3大类_,_和_。白盒测试工具、黑盒测试工具、测试管理工具7、软件测试是为发现程序中的_而执行程序的_。错误,过程8、测试用例是由_和预期的_两部分组成。测试输入数据 ,输出数据9、白盒测试又称为_,可以分为_和_两大类。结构测试,静态测试,动态测试10、软件是包括_的完整集合。程序,数据,相关文档11、边界值分析法属于_。黑盒测试12、单元测试是以_说明书为指导,测试源程序代码。详细设计13、集成测试以_说明书指导,测试软件结构。概要设计14、确认测试以_说明书为指导。需求分析15、软件开发的基本过程_,_,_,_,_,_。需求分析、概要设计、详细设计,编码,测试、维护16、代码复审属于_,不实际运行程序。静态测试17、集成测试把模块组成成系统的测试方式:_和_。一次性集成测试,增量式集成测试18、黑盒测试有两种基本方法,即:_和_。通过测试,失败测试二、选择题(每题3分,共10题,分数为30分)1. 下列哪一项不是白盒测试?(C)A.单元测试 B.集成测试 C.系统测试 D.回归测试2. 属于黑盒测试的方法?(C)A.基于基本路径 B.控制流 C.基于用户需求测试 D.逻辑覆盖3在Assert类中断言对象为NULL是_。(C)A.assertEquals B.assertTrue C.assertNull D.fail4_的目的是对最终软件系统进行全面的测试确保最终软件系统产品满足需求。(A)系统测试 集成测试单元测试 功能测试5在Assert类中断言两个对象相等是_。(A)A.assertEquals B.assertTrue C.assertSame D.fail6有一组测试用例使得每一个被测试用例的分支覆盖至少被执行一次,它满足的覆盖标准_。(B)A. 语句覆盖 B.判定覆盖 C.条件覆盖 D.路径覆盖7. 在Assert类中断言测试失败是_。(D)A.assertEquals B.assertTrue C.assertSame D.fail8.软件测试的目的是_。(C)表明软件的正确性 评价软件质量尽可能发现软件中的错误判定软件是否合格9.关于白盒测试与黑盒测试的最主要区别,正确的是_。(A)白盒测试侧重于程序结构,黑盒测试侧重于功能白盒测试可以使用测试工具,黑盒测试不能使用工具白盒测试需要程序参与,黑盒测试不需要黑盒测试比白盒测试应用更广泛10.软件测试类型按开发阶段划分_。(B)需要测试单元测试集成测试单元测试集成测试确认测试系统测试验收测试单元测试集成测试确认测试调试单元测试功能测试11.在Junit中,testXXX()方法就是一个测试用例,测试方法是_。(B)private void testXXX() public void testXXX() public float testXXX() public int testXXX()12.在下面所列举中的逻辑测试覆盖中,测试覆盖最强的是_。(B)条件覆盖 条件组合覆盖语句覆盖 判定覆盖13.在下面所列举中的逻辑测试覆盖中,测试覆盖最弱的是_。(C)条件覆盖 条件组合覆盖语句覆盖 判定覆盖14.软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节?(B)A集成测试 B单元测试C目的测试 D确认测试15.增量式集成测试有3种方式:自顶向下增量测试方法, 和混合增量测试方式。(B)A自中向下增量测试方法 B自底向上增量测试方法C多次性测试 D维护16.Junit的TestCase类提供 和tearDown()方法,分别完成对测试环境的建立和拆除。(A)AsetUp()Bset() Csetap() DsetDown()17. _方法根据输出对输入的依赖关系设计测试用例。(C)路径测试 等价类 因果图 归纳测试18.Junit测试在单元测试阶段测试,主要用于_。(A)白盒测试 灰盒测试 黑盒测试 确认测试19.不属于白盒测试的技术是_。(C)A路径覆盖 B判定覆盖 C边界值分析 D条件覆盖20.软件测试过程中的集成测试主要是为了发现_阶段的错误码。(B)A需求分析 B概要设计C编码 D维护21.增量式集成测试有3种方式: ,自底向上增量测试方法和混合增量测试方式。(A)A自顶向下增量测试方法 B一次性集成测试C多次性测试 D维护22.Junit适用于java开发人员在_阶段,进行单个方法实现功能或者类本身的测试,主要用于白盒测试。(C)集成测试 验收测试 单元测试 确认测试23.软件测试是按照特定的规程,_的过程。(A)发现软件错误 说明程序正确 证明程序没有错误 设计并运行测试用例24.一个成功的测试是_。(B)发现错误码 发现了至今尚未发现的错误 没有发现错误码证明发现不了错误25.按照测试组织划分,软件测试可分为:开发方测试,第三方测试,_。(C)集成测试 确认测试用户测试 灰盒测试26.下列模型哪个软件测试过程模型_。(A)W模型 漠布模型L模型 G模型27.Junit有两个包:_和Junit.extensions。(B)Junit.frametest Junit.framework Junit.amework Junit.assert28.单元测试一般以_为主。(A)白盒测试 黑盒测试 系统测试 分析测试29.编码阶段产生的错误由_检查出来的。(A)单元测试 集成测试 系统测试 有效性测试30.代码检查法有桌面检查法,走查和_。(B)静态测试 代码审查 动态测试 白盒测试三简答题(每题10分,共4题,分数为40分) 1.计算环路复杂度方法有哪三种?答:(1)V(G)=判定节点数+ 1 ; (2)V(G) = E-N+2 ; (3)V(G)=区域数+ 12.白盒测试有几种方法?答:白盒测试方法分为两大类:静态测试方法和动态测试方法。静态测试方法:检查软件的表示和描述是否一致,没有冲突或者没有歧义。动态测试方法:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖。3.什么是软件测试,软件测试分为哪几个阶段。答:软件测试是为了发现程序中的错误而执行程序的过程。软件测试一般分为单元测试、集成测试和系统测试。4.比较白盒测试和黑盒测试?答:使用白盒测试方法时,测试根据程序的内部逻辑和指定的覆盖标准;黑盒测试法是通过分析程序的接口功能设计测试用例的。5. 为以下程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖。int test(int A,int B) if(A1) AND (B20) then X=A+B; return x;答:语句覆盖测试用例:A=2,B=0;判定覆盖测试用例:A=3,B=0;A=2,B=20; 条件覆盖测试用例:A=2,B=0;A=0,B=21;6. 为以下程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖。void DoWork (int x,int y,int z) int k=0,j=0; if ( (x3)&(z5) ) j=x*y+10; /语句块2 j=j%3; /语句块3答:语句覆盖测试用例:x=4、y=5、z=5;判定覆盖测试用例:x=4、y=5、z=5;x=2、y=5、z=5;条件覆盖测试用例:x=4、y=6、z=5 ;x=2、y=5、 z=15 ;7某公司人事软件的工资计算模块的需求规格说明书中描述:(1)年薪制员工:严重过失,扣当月薪资的;过失,扣年终奖的2%.(2)非年薪制员工:严重过失,扣当月薪资的;过失,扣当月薪资的%.根据题目内容列出条件和结果,给出决策表。答:条件:年薪制:严重过失结果:e1:扣月4% e2: 扣月8%e3: 扣年2%1234条件:C1C211001010动作e1e2e38.看代码程序: void Sort ( int iRecordNum, int iType )1 2 int x=0;3 int y=0;4 while ( iRecordNum 0 )5 6 If ( iType=0 )7x=y+2;8 else9 If ( iType=1 )10 x=y+10;11 else12 x=y+20;13 14 要求(1)给以上代码画出控制流图(2)控制流图的环复杂度V(G),写出独立路径。(1) 控制流图:(2)V(G)= 4 路径1:414 路径2:46713 4 14 路径3:4691013414路径4:4691213414-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从供选择的答案中选出同下列关于软件测试的各条叙述关系最密切的字句。A对可靠性要求很高的软件,例如操作系统,由第三者对源代码进行逐行检查。B已有的软件被改版时,由于受到变更的影响,改版前正常的功能可能发生异常,性能也可能下降。因此,对变更的软件进行测试是必要的。C在意识到被测试模块的内部结构或算法的情况下进行测试。D为了确认用户的需求,先做出系统的主要部分,提交给用户试用。E在测试具有层次结构的大型软件时,有一种方法是从上层模块开始,由上到下进行测试。此时,有必要用一些模块替代尚未测试过的下层模块。供选择的答案:AE: 仿真器 代码审查 模拟器 桩 驱动器 域测试 黑盒测试 原型 白盒测试 退化测试三、判断题:共10小题,每小题1分,满分10分;请将答案以“”、“”形式填入题后括号中。1. 好的测试员不懈追求完美。( F )2. 测试程序仅仅按预期方式运行就行了。( F )3. 不存在质量很高但可靠性很差的产品。( T )4. 在没有产品说明书和需求文档的条件下可以进行动态黑盒测试。( T )5. 静态白盒测试可以找出遗漏之处和问题。( T )6. 测试错误提示信息不属于文档测试范围。( F )7. 单元测试能发现约80%的软件缺陷。( T )8. 代码评审是检查源代码是否达到模块设计的要求。( T )9. 自顶向下集成需要测试员编写驱动程序。( F )10. 总是首先设计黑盒测试用例。( T )一、 名词解释(5315分)1验收测试是软件产品完成了功能测试和系统测试之后,在产品发布之前所进行的软件测试活动。2失败测试纯粹为了破坏软件而设计和执行的测试案例,被称为失败测试。3驱动模块驱动模块就是用来代替主模块,用它来调用子模块4. 桩模块集成测试前要为被测模块编制一些模拟其下级模块功能的“替身”模块,以代替被测模块的接口,接受或传递被测模块的数据,这些专供测试用的“假”模块称为被测模块的桩模块。5白盒测试也称为结构化测试、基于代码的测试,是一种测试用例设计方法,它从程序的控制结构导出测试用例。 六综合题(12020分)输入条件有效等价类无效等价类开头字符由0x或0X开头(1)以字母开头 以非0数字开头(2)(3)数值字符数字或AF的字母 (4)AF以外的字母(5)数值字符个数1个(6)0个(7)数值-7f且7f (8)7f7f(9)(10)用例1:0x7F, 覆盖等价类(1)(4)(6)(8) 用例2:-0Xb, 覆盖等价类(1)(4)(6)(8) 用例3:0X0, 覆盖等价类(1)(4)(6)(8) 用例4:0x, 覆盖等价类(1)(7) 用例5:A7, 覆盖等价类(2) 用例6:-1A, 覆盖等价类(3) 用例7:0X8h, 覆盖等价类(1)(5) 用例8:0x80, 覆盖等价类(1)(4)(10) 用例9:-0XaB, 覆盖等价类(1)(4)(9)-综合题:1.如图显示某程序的逻辑结构。试为它设计足够的测试用例,分别实现对程序的判定覆盖、条件覆盖和条件组合覆盖。(20分)(每空答案:覆盖种类需满足的条件测试数据期望结果判定覆盖A1, B=0A=2, B=0执行S1A1, B0或A1, B=0或A1, B0A=2, B=1或A=1, B=0或A=1, B=1执行S2条件覆盖以下四种情况各出现一次A1B=0A=2,B=0执行S1A1B0A=1,B=1执行S2条件组合覆盖A1, B=0A=2, B=0执行S1A1, B0A=2, B=1执行S2A1, B=0A=1, B=0执行S2A1, B0A=1, B=1执行S22、有二元函数f(x,y),其中x1,21,y1,31;请写出该函数采用基本边界值分析法设计的测试用例。(10分)答: , , , , , , , , 3设一个控制流图如下,请给出环形复杂度和基本测试路径。(20分)答案:(1) 根据程序环形复杂度的计算公式,求出程序路径集合中的独立路径数目。公式1:V(G)=11-9+2,其中10是控制流图G中边的数量,8是控制流图中节点的数目。公式2:V(G)=3+1,其中3是控制流图G中判断节点的数目。公式3:V(G)=4,其中4是控制流图G中区域的数目。因此,控制流图G的环形复杂度是4。(2) 根据上面环形复杂度的计算结果,源程序的基本路径集合中有4条独立路径:路径1:5-22路径2:5-7, 8-11, 12-21-5-22路径3:5-7, 8-16-17-19-21-5-22路径4:5-7, 8-16-18-19-21-5-224、设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1999年1月2029年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的日期检查功能。(20分) 1)划分等价类并编号,下表等价类划分的结果输入等价类有效等价类无效等价类日期的类型及长度6位数字字符有非数字字符少于6位数字字符多于6位数字字符年份范围在19992029之间小于1999大于2029月份范围在0112之间等于00大于12 2)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为、,设计的测试用例如下:测试数据期望结果覆盖的有效等价类200211输入有效、为每一个无效等价类设计一个测试用例,设计结果如下:测试数据期望结果覆盖的无效等价类99June无效20036无效2001006无效199712无效203001无效200100无效200113无效四 简答题(30分)1.试描述软件测试的定义?(3分)答:利用手工或者自动化的方式,按照测试方案对系统执行测试用例的过程叫做软件测试。2.什么是软件缺陷?(4分)答:满足以下条件的问题都叫缺陷:软件未达到产品说明书中已标明的功能软件出现了产品说明书中指明不会出现的错误软件功能超出了产品说明书指明的范围软件未达到产品说明书虽未指出但应达到的目标软件测试员认为软件难以理解,不易使用,运行速度缓慢,或者最终用户认为该软件使用效果不好。3.常见的黑盒测试用例的设计方法?并分别简单介绍一下各自的思想。(8分)答:等价类划分:等价类划分法是一种重要的、常用的黑盒测试方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。边界值分析:对输入输出的边界值进行测试的一种黑盒测试方法。决策表法:决策表是分析和表达多逻辑条件下执行不同操作的情况的工具因果图分析法:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。4. 列举常见的系统测试方法。答出来5个即可。(5分) 答:恢复测试安全测试强度测试性能测试正确性测试可靠性测试兼容性测试Web测试 5.文档测试主要测试哪些内容?答出来5点即可(5分)答:(1)检查产品说明书属性(2)检查是否完整(3)检查是否准确(4)检查是否精确(5)检查是否一致(6)检查是否贴切(7)检查是否合理(8)检查代码无关(9)检查可测试性6. 单元测试主要测试那几方面的问题?(5分)答:模块接口、局部数据结构、边界条件、独立的路径和错误处理。五,设计题1.输入条件有效等价类无效等价类是否三角形的三条边A0 (1)A0 (7)B0 (2)B0 (8)C0 (3)C0 (9)A+BC (4)A+BC (10)A+CB (5)A+CB (11)B+CA (6)B+CA (12)是否等腰三角形A=B (13)AB AND AB AND BC (16)B=C (14)C=A (15)是否等边三角形A=B AND A=C AND B=C(17)AB (18)AB (19)AB (20)编号【A B C 】覆盖等价类输出1【3、4、5】 (1)、 (2)、 (3)、 (4)、 (5)、 (6)一般三角形2【0、1、2】(7)、不能构成三角形3【1、0、2】(8)、4【1、2、0】(9)、5【1、2、3】(10)、6【1、3、2】(11)、7【3、1、2】(12)、8【3、3、4】 (1)、 (2)、 (3)、 (4)、 (5)、 (6)、(13)等腰三角形9【3、4、4】 (1)、 (2)、 (3)、 (4)、 (5)、 (6)、(14)10【3、4、3】 (1)、 (2)、 (3)、 (4)、 (5)、 (6)、(15)11【3、4、5】 (1)、 (2)、 (3)、 (4)、 (5)、 (6)、(16)非等腰三角形12【3、3、3】 (1)、 (2)、 (3)、 (4)、 (5)、 (6)、(17)等边三角形13【3、4、4】 (1)、 (2)、 (3)、 (4)、 (5)、 (6)、(18)非等边三角形14【3、4、3】 (1)、 (2)、 (3)、 (4)、 (5)、 (6)、(19)15【3、3、4】 (1)、 (2)、 (3)、 (4)、 (5)、 (6)、(20)2. 一、 单项选择题:共20小题,每小题2 分,满分40分。1软件测试的目的:( c ) A. 避免软件开发中出现的错误 B. 发现软件开发中出现的错误 C. 尽可能发现并排除软件中潜藏的错误,提高软件的可靠性 D. 修改软件中出现的错误 2、软件测试是采用( a )执行软件的活动。A测试用例B输入数据C测试环境D输入条件3、导致软件缺陷的最大原因是:( a )A软件需求说明书B设计方案C编码D维护4、在下列描述中,关于一个软件缺陷状态完整变化的错误描述是( d )A、打开修复关闭B、打开关闭C、打开保留D、激活修复重新打开5、在下列描述中,关于测试与调试的说法错误的是( d )A、测试是显示错误的行为;而调试是推理的过程;B、测试显示开发人员的错误。调试是开发人员为自己辩护;C、测试能预期和可控。调试需要想象、经验和思考;D、测试必须在详细设计已经完成的情况下才能开始;没有详细设计的信息调试不可能进行。6、某次程序调试没有出现预计的结果,下列( b )不可能是导致出错的原因。 A变量没有初始化 B编写的语句书写格式不规范 C循环控制出错 D代码输入有误 7、软件缺陷修复的代价最高的阶段为( a )A、发布阶段 B、需求阶段C、设计阶段 D、编码阶段8、不属于逻辑覆盖方法的是( d )。A组合覆盖 B判定覆盖 C条件覆盖 D接口覆盖9、( d )是选择若干个测试用例,运行被测程序,使得程序中的每个可执行语句至少执行一次。A、条件覆盖 B、组合覆盖C、判定覆盖 D、语句覆盖10、( a )是设计足够多的测试用例,使得程序中每个判定包含的每个条件的所有情况(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少出现一次。A、判定条件覆盖 B、组合覆盖C、判定覆盖 D、条件覆盖11软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节?( b )A功能测试B单元测试C结构测试D验收测试12、单元测试的主要任务不包括( b )。A出错处理 B全局数据结构C独立路径 D模块接口13、如下图所示的N-S图,至少需要( b )个测试用例完成逻辑覆盖。A12 B48C27 D1814、单元测试中用来模拟实现被测模块需调用的其他功能模块的是( b )。A驱动模块 B桩模块C主控模块 D真实的被调用模块15、集成测试计划应该在( b )阶段末提交。A、需求分析 B、概要设计C、详细设计 D、单元测试完成16、下列关于程序效率的描述错误的是( c )。A提高程序的执行速度可以提高程序的效率B降低程序占用的存储空间可以提高程序的效率C源程序的效率与详细设计阶段确定的算法的效率无关D好的程序设计可以提高效率17、下列( b )是对程序流程图进行简化后得到的,它可以更加突出的表示程序控制流的结构,且不包含复合条件。ADD-路径图 B 控制流图CMM-路径图 D 模块调用图18、自底向上增量式集成测试中,下面( c )描述是正确的。 A测试由桩模块控制 B最上面的模块最先测试C父单元用测试过的子单元测试 D包含树的深度优先或广度优先遍历过程19、测试后程序中残存的错误数目与该程序中已发现的错误数目成( d )。A未知 B反比C相等 D正比20、针对是否对无效数据进行测试,可以将等价类测试分为(b )1) 标准(一般)等价类测试2) 健壮等价类测试3) 弱等价类测试4) 强等价类测试A3)4) B1)2)C1)3) D2)4)二、判断题:共20小题,每题1分,满分20分)1、一个程序中所含有的路径数与程序的复杂程度有着直接的关系。( ) 2、结构性测试是根据软件的规格说明来设计测试用例。( x )3、错误推测法是根据输出对输入的依赖关系来设计测试用例的。(x )4、软件缺陷属性包括缺陷标识、缺陷类型、缺陷严重程度、缺陷产生可能性、缺陷优先级、缺陷状态、缺陷起源、缺陷来源、缺陷原因。( )5、对于一个含有n个变量的程序,采用边界值健壮性测试方法来测试程序会产生6n+1个测试用例。()6、数据流测试是主要用作路径测试的真实性检查。两种形式分别为定义/使用测试、基于程序片的测试。( )7、软件只要经过严格严谨的内部测试之后,可以做到没有缺陷。(x )8、测试用例应由测试输入数据和对应的实际输出结果这两部分组成。( x )9、测试是可以穷尽的。( x )10、测试自动化是万能的。( x )11、软件缺陷可能会被修复,可能会被保留或者标识出来。( )12、每一个软件项目都有一个最优的测试量。( )13、黑盒测试往往会造成测试用例之间可能存在严重的冗余和未测试的功能漏洞。( )14、代码审查工作属于静态测试。( )15、软件测试是一个过程,包含若干活动,运行软件进行测试只是活动之一。( )16、回归测试是在软件修改后再次运行以前为查找错误而执行程序曾用过的测试用例. 17、集成测试是为确定软件系统是否满足验收标准以及使客户决定是否接受而进行的正式测试. ( x )18、测试按照测试层次可以划分成为单元测试、集成测试和系统测试。( )19、只要能够达到100的逻辑覆盖率,就可以保证程序的正确性。( x )20、永远有缺陷类型会在测试的一个层次上被发现,并且能够在另一个层次上逃避检测。( )三、简答题:共4小题,每题5分,满分20分。1、优秀的软件测试工程师应具备哪些素质?答:具有探索精神、具有良好的计算机编程基础、故障排除能手、坚持不懈的精神、具有创新精神和超前意识、追求完美、判断准确、具有整体观念,对细节敏感、团队合作精神,沟通能力2、有二元函数f(x,y),其中x1,12,y1,31;请写出该函数采用基本边界值分析法设计的测试用例。答: , , , , , , , , 3、黑盒测试与白盒测试各有哪些优缺点,应该如何结合才能解决漏洞和冗余问题?答:功能性测试具有两大优点:功能性测试与软件如何实现无关;测试用例开发可以与实现并行进行,因此可以压缩总的项目开发时间。缺点:测试用例之间可能存在严重的冗余,还会有位测试的软件漏洞。结构性测试局限于已经完成的代码行为当中,离代码太近。因此可以结构性测试指标去解决冗余和漏洞问题。如果发现同一条程序路径被多个功能性测试用例遍历,就可以怀疑这种冗余不会发生新的缺陷,如果没有达到一定的DD路径覆盖,则可知在功能性测试用力中存在漏洞。因此路径测试可以提供作为功能性测试交叉检查的一组指标。4、有一段程序如下,请设计测试用例以满足语句覆盖要求。void DoWork (int x,int y,int z) int k=0,j=0; if ( (x3)&(z5) ) j=x*y+10; /语句块2 j=j%3; /语句块3答:要实现DoWork函数的语句覆盖,只需设计一个测试用例就可以覆盖程序中的所有可执行语句。四、综合题:共2小题,每题10分,满分20分。1、使用基本路径测试方法,为以下程序段设计测试用例。(1)画出程序的控制流图,编号已经给出。(2)计算程序的循环复杂度,导出程序基本路径集中的独立路径条数。(3)导出基本路径集,确定程序的独立路径。(4)根据(3)中的独立路径,设计测试用例(确保基本路径集中的每一条路径的执行)的输入数据和预期输出。 void Do (int X,int A,int B) 1 if ( (A1)&(B=0) ) 2 X = X/A; 3 if ( (A=2)|(X1) ) 4 X = X+1; 5 由于控制流

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论