期末题库-软件测试答案(20页).doc
-期末题库-软件测试答案-第 20 页选择题 10×2分1、软件是程序和( A )的集合。 A、文档 B、代码 C、测试用例 D、测试2、软件工程中描述生存周期的瀑布模型一般包括计划、( A )、设计、编码、测试、维护等几个阶段。A、需求分析 B、 需求调查 C、 可行性分析 D、 问题定义3、严重的软件缺陷的产生主要源自(A)。 A、需求 B、设计 C、编码 D、测试4、以下不属于应用系统中的缺陷类型的是:( B ) A、不恰当的需求解释B、用户指定的错误需求 C、设计人员的习惯不好 D、不正确的程序规格说明5、降低缺陷费用最有效的方法是( B )。 A、测试尽可能全面B、尽可能早的开始测试C、测试尽可能深入D、让用户进行测试6、测试环境中不包括的内容是( A ) A、测试所需文档资料 B、测试所需硬件环境 C、测试所需软件环境 D、测试所需网络环境7、软件调试的目的是( B) A、发现软件中隐藏的错误B、解决测试中发现的错误C、尽量不发现错误以便早日提交软件D、证明软件的正确性8、软件测试的目的是( A ) 难易度:2A、发现软件中隐藏的错误B、解决软件中隐藏的错误C、尽量不发现错误以便早日提交软件D、证明软件的正确性9、下列关于测试和调试的说法中正确的是( B ) A、测试和调试没有本质区别。目的都是为了发现软件系统中的错误。 B、测试是测试人员的职责,在整个测试活动中可以不需要开发人员的参与。 C、调试主要在软件的开发阶段进行。D、调试一般不能确定程序中潜在错误发生的原因10、从测试的要求来讲,如果想让测试完成的效果更好,测试部门与开发部门的关系最好是下面四种中的( D )。 难易度:3A、测试组织与开发组织为同一公司同一部门同一小组,并且测试人员与开发人员为同一组人员,即开发人员测试自己的程序。B、测试组织与开发组织为同一公司同一部门同一小组,但测试人员与开发人员为不同人员。C、测试组织与开发组织为同一公司,但不在同一部门。D、测试组织与开发组织为不同公司。11、某软件公司在招聘软件测试工程师时,应聘者甲向公司做如下保证:(1) 经过自己测试的软件今后不会再出现问题 (2) 在工作中对所有程序员一视同仁,不会因为某个程序编写的程序发现的问题多, 就重点审查该程序,以免不利于团结 (3) 承诺不需要其他人员,自己就可以独立进行测试工作 (4) 发扬咬定青山不放松的精神,不把所有问题都找出来,绝不罢休根据自己所学的软件测试知识,应聘者甲的保证( D ) 难易度:3A、(1)(4)是正确的 B、(2)是正确的 C、都是正确的 D、都是错误的12、用不同的方法可将软件测试分为白盒法和黑盒法,或者( C )和静态测试。 A、白盒法 B、黑盒法 C、动态测试 D、灰盒法13、黑盒测试法是根据程序的( C )来设计测试用例的。A、应用范围 B、内部逻辑 C、功能 D、输入数据14、验收测试的测试用例主要根据( A )的结果来设计。A、需求分析 B、源程序 C、概要设计 D、详细设计15、软件测试中白盒测试法是通过分析程序的( B )来设计测试用例的。A、应用范围 B、内部逻辑 C、功能 D、输入数据16、下列关于白盒测试与黑盒测试的说法中错误的是( C )。A、用白盒测试来验证单元的基本功能时,经常要用黑盒测试的思考方法来设计测试用例 B、仅仅通过白盒测试,或仅仅通过黑盒测试都不能全面系统地测试一个软件 C、白盒测试适用于软件测试的各个阶段 D、在黑盒测试中使用白盒测试的手段,常被称为“灰盒测试”17、关于黑盒测试与白盒测试的区别,下列说法正确的是( A )。 A、白盒测试侧重于程序结构,黑盒测试侧重于功能 B、白盒测试可以使用自动测试工具,黑盒测试不能使用工具 C、白盒测试需要开发人员参与,黑盒测试不需要。 D、黑盒测试比白盒测试应用更广泛18、下列关于alpha 测试的描述中正确的是:( B ) A、alpha 测试不需要用户代表参加 B、alpha 测试不要开发人员参加 C、alpha 测试是集成测试的一种 D、alpha 测试是验收测试的一种19、集成测试分为渐增组装测试和( A ) A、非渐增组装测试 B、确认测试 C、单元测试 D、测试计划20、集成测试中使用的辅助桩模块分为驱动模块和( C ) A、传入模块B、主模块C、桩模块D、传出模块21、驱动模块模拟的是( D ) A、子模块B、第一模块C、底层模块D、主程序22、单元测试的测试用例主要根据( B )的结果来设计。A、需求分析 B、源程序 C、概要设计 D、详细设计23、单元测试的测试目的是( C ) A、保证每个模块或件能正常工作B、保证每个程序能正常工作C、确保缺陷得到解决D、使程序正常运行24、以用户为主导的测试成为( A ) A、验收测试B、白盒测试C、黑盒测试D、系统测试25、按照测试策略和过程,测试可以分为:( B ) A、单元、白盒、确认、系统、验收B、单元、集成、确认、系统、验收C、白盒、黑盒、确认、系统、验收D、白盒、集成、确认、系统、验收26、若一个通讯簿最多可以输入100条记录,则下列选项中设计的测试用例最优的是( D )。A、分别输入1、50、100条记录 B、分别输入0、1、50、99、100条记录 C、分别输入0、1、99、100、101条记录 D、分别输入0、1、50、99、100、101条记录27、下列逻辑覆盖测试方法中,覆盖能力最强的是( D ) A、语句覆盖 B、判定覆盖 C、条件覆盖 D、条件组合覆盖28、选出属于白盒测试方法( D ) A、测试用例覆盖 B、输入覆盖C、输出覆盖D、条件覆盖29、( A )是一种黑盒测试方法,它是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据当作测试用例。 A、等价类划分法B、边界值分析法C、因果图法D、场景法30、黑盒测试用例设计方法包括( B )等 A.等价类划分法、因果图法、正交试验设计法、功能图法、路径覆盖法、语句覆盖法B.等价类划分法、边界值分析法、判定表驱动法、场景法、错误推测法、因果图法、正交试验设计法、功能图法C.因果图法、边界值分析法、判定表驱动法、场景法、Z路径覆盖法D.场景法、错误推测法、因果图法、正交试验设计法、功能图法、域测试法31、错误推测法的基本想法是:( D ) A.划分有效等价类和无效等价类B.划分原因和结果C.列出所有的可能情况D.列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据它们选择测试用例32、用户文档测试中不包括的是( A ) A、用户需求说明B、操作指南C、用户手册D、随机帮助33、与设计测试用例无关的文档是( A ) A、项目开发计划B、需求规格说明书C、设计说明书D、源程序34、测试过程实施所必备的核心文档不包括( B ) A、测试计划B、测试缺陷报告C、测试用例(大纲)D、软件测试报告35、( A )是为了高效率地发现软件缺陷而精心设计的少量测试数据。 A、测试用例 B、测试计划 C、测试报告 D、测试分析报告36、下列( A )情况需要考虑引入自动化测试。 A、需要重复执行很多次的测试B、只执行一次的测试C、不重要的测试D、很快有回报的测试37、WEB应用中一般采用架构的是( B ) A、C/S结构 B、B/S结构C、集群结构D、服务器互备份38、下列哪个不是WEB测试的测试内容?( D ) A、功能测试B、兼容性测试 C、界面测试D、用户测试39、导航测试属于( C ) A、功能测试B、性能测试C、可用性/可靠性测试D、压力测试40、Web测试的一个重要特征是( C ) A、图片B、文字C、链接D、视频41、测试驱动开发的简称是( C ) A、ADD B、TTD C、TDD D、TDT42、确保测试与( A )无关,不要依赖使用过期的数据进行测试。 A、时间 B、地点C、软硬件资源D、测试人员43、Junit是( C )语言的单元测试框架。 A、CB、.NetC、JavaD、C+44、( D ) 中认定的对象是对问题空间中的结构、其他系统、设备、被记忆的事件、系统涉及的人员等实际实例的抽象。A、OOPB、OODC、OOUD、OOA45、对OOD的测试,针对功能的实现和重用以及对OOA结果的拓展,以下不属于考虑内容的是( B ) A、对构造的类层次结构的测试B、对对象库的结构测试C、对类库的支持的测试D、对认定的类的测试判断题 10×1分1. F软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。 2. T广义的软件测试由“确认”、“验证”、“测试”3个方面组成。 3. F软件测试等于程序测试。 4. F测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。 5. T软件测试的目的是尽可能多的找出软件的缺陷。 6. T要充分注意软件测试中的群集现象。 7. T好的测试方案是极可能发现迄今为止尚未发现的错误。 8. F测试人员要坚持原则,缺陷未修复完坚决不予通过。 9. T发现错误多的模块,残留在模块中的错误也多。 10. F测试人员说:“没有可运行的程序,我无法进行测试工作”。 11. F负载测试是验证要检验的系统的能力最高能达到什么程度。 12. F白盒测试方法比黑盒测试方法好。 13. T在软件开发过程中,若能尽早暴露其中的错误,则为修复和改进错误所花费的代价就会降低。 14. T产品质量检验阶段是质量管理的发展阶段之一。 15. TV模型不能适应较大的需求变化。 16. TW模型能够较早地发现缺陷。 17. F验收测试是由最终用户来实施的。 18. F单元测试能发现约80% 的软件缺陷。 19. F我们可以人为的使得软件不存在配置问题。 20. F集成测试计划在需求分析阶段末提交。 21. TBeta 测试是验收测试的一种。 22. T自底向上集成需要测试员编写驱动程序。 23. F为了快速完成集成测试,采用一次性集成方式是适宜的。 24. Falpha 测试不是验收测试的一种。 25. F必须要求用户参与的测试阶段是单元测试。 26. T项目立项前测试人员不需要提交任何工件。 27. F测试需求一定要写得很细很细。 28. F测试需求就是软件需求。 29. F测试组负责软件质量。 30. F代码评审是检查源代码是否达到模块设计的要求。 31. F代码评审员一般由测试员担任。 32. T一个程序中所含有的路径数与程序的复杂程度有着直接的关系。 33. F静态检查就是看代码。 34. T等价类法和边界值着重考虑输入条件,而不考虑输入条件的各种组合,也不考虑输入条件之间的相互制约关系。 35. T在实际测试中,边界值分析法和等价类划分法经常结合使用。 36. F因果图法是建立在决策表法基础上的一种白盒测试方法。 37. T黑盒测试法又叫功能测试或数据驱动测试。 38. F测试用例是在测试执行后写的。 39. T测试用例一般是由测试设计人员写的。 40. T在设计测试用例时,应包括合理的输入条件和不合理的输入条件。 41. TQTP是一种自动化测试工具。 42. F测试自动化是万能的。 43. TLoadRunner是性能测试工具。 44. T采用自动化测试有可能延误项目进度。 45. F面向对象的软件测试是采用面向对象的概念和原则,用结构化的方法构建。 46. TWeb网站测试需要考虑数据库测试。 47. TWeb网站测试不需要考虑功能测试。 48. F敏捷测试不需要写测试计划。 49. TJunit是一个开源的Java单元测试框架。 50. F WAS是单元测试工具。 名词解释5×4分1、软件测试:在软件投入运行之前,对软件需求分析、设计规格说明书和编码的 最终复审,是软件质量保证的关键步骤。 2、软件缺陷:存在于软件之中的不希望或不可接受的偏差。3、软件测试的目的:为了检验软件系统是否满足需求 4、黑盒测试:检测软件每个功能是否能正常使用。不考虑内部逻辑结构和内部特性。 5、回归测试:软件或软件的修复或更正后的“再测试”。 6、性能测试:测试软件的运行性能。 7、质量保证:是为了提供足够的信任证据,证明组织有关的各类实体有能力满足 质量要求所实施,并在必要时进行证实的有计划、有系统的活动。 8、测试:系统开发接近完成时对软件进行的测试, 开发者在测试现场 9、测试:系统开发根本完成时对软件进行的测试, 开发者不在测试现场 10、压力测试:测试系统在某一条件达到最高限度时,各项功能是否依旧运行。 11、单元测试:又称模块测试,是针对软件设计的最小单位-程序模块进行正 确性检验的测试工作。 12、集成测试:又称组装测试,通常在单元测试的基础上,将所有的程序模块 进行有序的、递增的测试。 13、系统测试:将软件作为计算机系统的一个元素,与其他系统元素结合在一 起,在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试。 14、驱动模块(driver):相当于被测模块的主程序 15、桩模块(stub):用以代替被测模块调用的这模块。 16、确认测试:确认测试又称有效性测试,是检验所开发的软件是否能按用户提 出的要求运行。 17、软件测试策略:是为软件工程过程定义的一个软件测试的模板,也就是把特定的测试用例方法放置进去的一系列步骤。18、测试计划的目的:明确测试活动的意图。 19、测试用例(Test Case):是为了高效率地发现软件缺陷而精心设计的少量 测试数据。 、20、软件自动化测试:使用一种自动化测试工具来验证各种软件测试的需求,它包括测试活动的管理与实施。 21、面向对象的软件测试:面向对象的软件测试是面向对象软件开发的不可缺少的一环,是保证软件质量、提高软件可靠性的关键。结合传统软件测试的方法和技术,并针对面向对象软件所具有的特征,将面向对象软件测试层次 划分为三层:类测试、类簇测试和系统测试。22、敏捷测试:敏捷测试是适应敏捷方法而采用的新的测试流程、方法和实践,对传统的测试流程有所剪裁,有不同的侧重,例如减少测试计划、测试用例设计等工作的比重,增加与产品设计人员、开发人员的交流和协作。简述题 2*10分一、 请简述软件测试模型中W模型的图及W模型的优点。 测试与开发同步进行;有利于尽早地全面发现问题;及时了解项目难度和测试风险;二、 说明测试技术的基本分类 从是否需要执行被测软件的角度(静态,动态)从测试是否针对系统的内部结构和具体实现算法的角度(白盒,黑盒)按测试策略和过程(单元测试,集成测试,系统测试,验收测试)按实施组织划分(开发方测试,用户测试,第三方测试)三、 说明软件测试和调试的目的有何区别?测试的目的是判断和发现软件是否有错误调试的目的是定位软件错误并纠正四、 列举自动化测试工具? QTP、Rational 、AdventNet、SilkTest、QA 、Test 、Holodeck、Telelogic 五、 Alpha测试与Beta测试的区别?两者的主要区别是测试的场所不同。Alpha测试是指把用户请到开发方的场所来测试,beta测试是指在一个或多个用户的场所进行的测试。六、 测试360网站首页应该考虑的因素?七、 简述黑盒测试中决策表法的定义及其方法适应的程序? 在逻辑条件取值的组合所构成的多种情况,分别执行不同的操作。处理这类问题的一个有力分析和表达工具就是决策表八、 简述测试模型中V模型的优缺点? 优点:1. 既有底层测试又有高层测试。底层:单元测试。高层:系统测试。2. 将开发阶段清楚的表现出来,便于控制开发的过程。当所有阶段都结束时,软件开发就结束了。 缺点:1. 容易让人误解为测试是在开发完成之后的一个阶段。2. 由于它的顺序性,当编码完成之后,正式进入测试时,这时发现的一些bug可能不容易找到其根源,并且代码修改起来很困难。3. 实际中,由于需求变更较大,导致要重复变更需求、设计、编码、测试。返工量大。九、 向对象测试与传统测试的区别?测试的对象不同;测试的基本单位不同;测试的方法和策略不同。 十、 简述测试工具Junit的特点?可重用单元测试用例;提供三种方式显示测试结果;提供单元测试用例成批运行的功能;整个框架设计良好,易扩张。十一、请画出敏捷测试流程简要图?十二、请列举你所知的测试原则?案例分析题 1*20分 一、某保险公司的人寿保险的保费计算方式为:投保额×保险费率其中,保险费率依点数不同而有别,10点及10点以上保险费率为06%,10点以下保险费率为01%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则如表1所示。表1 保险公司计算保费费率的规则年龄性别婚姻抚养人数20394059其它MF已婚未婚1人扣05点最多扣3点(四舍五入取整)6点4点2点5点3点3点5点分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类,10分)和测试用例表(10分)。二、某软件规格说明中包含这样的要求:输入的第一个字符必须是A或B,第二个字符必须是一个数字,在此情况下进行文件的修改;但如果第一个字符不正确,则给出信息L;如果第二个字符不是数字,则给出信息M。1、 写出文字说明(5分)2、 画出因果图(5)3、 写出相应的决策表(5分)4、 写出测试用例(5分)三、假设中国某航空公司规定:中国去欧美的航线所有座位都有食物供应。每个座位都可以播放电影。中国去非欧美的国外航线都有食物供应,只有商务舱可以播放电影。中国国内的航班的商务舱有食物供应,但是不可以播放电影 。中国国内的航班的经济舱除非飞行时间大于2小时就有食物供应,但是不可以播放电影。 使用决策表法设计测试用例。四、某城市电话号码由三部分组成,分别是: 地区码 空白或三位数字; 前缀 非0或1开头的三位数字; 后缀 4位数字。 假定被测程序能接受一切符合上述规定的电话号码, 拒绝所有不符合规定的电话号码。要求: (1)请选择适当的黑盒测试方法,写出选择该方法的原因,并使用该方法的步骤,给出测试用例表。(2)如果所生成的测试用例不够全面,请考虑用别的测试方法生成一些补充的测试用例。分析设计题1*20分 一、分析以下程序代码,设计测试用例。Int x=1;Int y=1;1. While( MaxNum >0)2. if(10=Type)3. x=y*2;4. else5. if(100=Type)6. x=y+10;7. else8. x=y-20;9. MaxNum-;10. Ptintf(“%d”,x);二、分析以下程序代码,设计测试用例。1main () 2 3 int num1=0, num2=0, score=100; 4int i; 5 char str; 6 scanf (“%d, %cn”, &i, &str); 7 while (i<5) 8 9if (str=T) 10num1+; 11else if (str=F) 12 13 score=score-10; 14 num2 +; 15 16i+; 17 18 printf (“num1=%d, num2=%d, score=%dn”, num1, num2, score); 19三、分析以下程序代码,设计测试用例。1. Void sort(int i,int j)2. int m,n,k;3. m=n=k=0;4. while(i+<11)5. if (j<5)6. m+;break;7. else8. if(j<8)9. n+;10. else11. k+;12. Printf(“%d,%d,%d”,m,n,k);四、分析以下程序代码,使用语句覆盖和判定覆盖设计测试用例。1. void DoWork(int x,int y,int z)2. int k=0,j=0;3. if(x>3)&&(z<10)4. k=x*y-1; /语句块15. j=sqrt(k);6. if(x= =4)|(y>5)7. j=x*y+10; /语句块28. j=j%3; /语句块3单纯的课本内容,并不能满足学生的需要,通过补充,达到内容的完善 教育之通病是教用脑的人不用手,不教用手的人用脑,所以一无所能。教育革命的对策是手脑联盟,结果是手与脑的力量都可以大到不可思议。