软件测试练习题
- 格式:doc
- 大小:68.50 KB
- 文档页数:15
软件测试题大全及答案一、选择题1. 软件测试的目的是以下哪项?A. 确保软件没有错误B. 发现软件中的缺陷C. 证明软件是可靠的D. 增加软件的功能答案:B2. 黑盒测试不关心以下哪一项?A. 输入数据B. 程序代码C. 功能需求D. 预期结果答案:B3. 以下哪项不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 数据库测试答案:D4. 软件测试中的“回归测试”是指什么?A. 对新开发的功能进行测试B. 对修改后的功能进行重新测试C. 对软件的性能进行测试D. 对软件的安全性进行测试答案:B5. 以下哪项是白盒测试技术?A. 等价类划分B. 边界值分析C. 语句覆盖D. 状态转换答案:C二、填空题6. 软件测试分为两大类:_______测试和_______测试。
答案:黑盒;白盒7. 测试用例通常包括测试输入、测试执行条件、测试步骤和_______。
答案:预期结果8. 软件测试的基本原则之一是“早期和频繁地进行测试”,这意味着测试活动应_______软件开发周期的开始,并持续进行到_______。
答案:伴随;结束9. 性能测试主要关注软件应用的_______、_______、可靠性、可用性和可维护性。
答案:正确性;效率10. 探索性测试是一种_______的测试方法,它不依赖于正式的测试计划,而是依赖于测试员的经验和直觉。
答案:结构化;非三、简答题11. 什么是软件测试?请简述其重要性。
答案:软件测试是一种评估软件质量的过程,旨在验证软件的各个部分是否按照设计和需求正常运行,并发现软件中的缺陷。
软件测试的重要性在于它能够确保软件产品的可靠性和稳定性,减少软件发布后的风险和成本,提高用户满意度,最终保障企业的市场竞争力。
12. 请解释什么是“测试金字塔”?答案:测试金字塔是一种软件测试方法论,它将测试分为三个层次:单元测试(底部)、集成测试(中间)和端到端测试(顶部)。
金字塔的底部很宽,意味着应该有更多的单元测试,因为它们快速、独立且易于自动化。
软件测试基础试题及答案一、单项选择题(每题2分,共10题)1. 软件测试的目的是:A. 证明软件是正确的B. 证明软件存在错误C. 证明软件是无错误的D. 发现软件的缺陷答案:D2. 黑盒测试不关心以下哪一项:A. 输入数据B. 程序代码C. 测试用例D. 输出结果答案:B3. 以下哪个不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 维护测试E. 性能测试答案:E4. 软件测试的基本原则不包括:A. 测试显示存在缺陷B. 穷尽测试是不可能的C. 早期测试D. 测试可以证明程序是正确的答案:D5. 软件缺陷的严重性等级通常不包括以下哪一项:A. 致命B. 严重C. 一般D. 建议答案:D6. 软件测试计划应该包括以下哪一项:A. 测试范围B. 测试资源C. 测试进度D. 所有上述内容答案:D7. 以下哪个不是软件测试的阶段?A. 需求分析B. 测试设计C. 测试执行D. 测试报告E. 代码编写答案:E8. 软件测试中,回归测试的目的是什么?A. 验证新添加的功能B. 验证修复的缺陷C. 验证软件的整体性能D. 验证软件的兼容性答案:B9. 软件测试中,压力测试和负载测试的区别在于:A. 压力测试关注系统在极端条件下的表现B. 负载测试关注系统在正常工作负载下的表现C. 压力测试关注系统在正常工作负载下的表现D. 负载测试关注系统在极端条件下的表现答案:A10. 软件测试中的“等价类划分”技术主要用于:A. 减少测试用例的数量B. 增加测试用例的数量C. 改变测试用例的顺序D. 改变测试用例的内容答案:A二、多项选择题(每题3分,共5题)1. 软件测试过程中可能使用的测试用例设计技术包括:A. 边界值分析B. 决策表测试C. 状态转换测试D. 错误猜测E. 随机测试答案:A, B, C, D2. 软件测试的基本原则包括:A. 测试显示存在缺陷B. 穷尽测试是不可能的C. 早期测试D. 缺陷聚集原则E. 测试可以证明程序是正确的答案:A, B, C, D3. 软件测试的文档通常包括:A. 测试计划B. 测试用例C. 测试报告D. 缺陷报告E. 用户手册答案:A, B, C, D4. 软件测试的目的是:A. 验证软件的功能B. 验证软件的性能C. 验证软件的安全性D. 验证软件的兼容性E. 证明软件是无错误的答案:A, B, C, D5. 软件测试中,以下哪些是测试的类型:A. 单元测试B. 集成测试C. 系统测试D. 验收测试E. 性能测试答案:A, B, C, D, E三、判断题(每题1分,共5题)1. 软件测试可以完全替代人工测试。
软件测试基础练习题库(附参考答案)一、单选题(共90题,每题1分,共90分)1.下面的哪项测试步骤中需要进行局部数据结构测试()A、单元测试B、系统测试C、集成测试D、确认测试正确答案:A2.()也称功能测试,它是通过测试来检测每个功能是都能正常使用。
A、动态测试B、系统测试C、压力测试D、黑盒测试正确答案:D3.软件生存周期过程中,修改错误最大的阶段是()A、设计阶段B、需求阶段C、发布运行阶段D、编程阶段正确答案:C4.以程序的内部结构为基础的测试用例技术属于()A、白盒测试B、数据测试C、黑盒测试D、灰盒测试正确答案:A5.以下说法正确的是()A、自底向上的集成测试需要测试人员编写测试驱动程序B、非功能质量属性越高越好C、单元测试是对软件基本组成单元进行测试,即测试对象一定是一个函数D、系统备份与恢复中的数据备份与恢复通常只需要针对业务/用户数据正确答案:B6.数据流覆盖关注的是程序中某个变量从其声明、赋值到引用的变化情况,它是下列哪一种覆盖的变种()A、分支覆盖B、语句覆盖C、控制覆盖D、路径覆盖正确答案:D7.软件测试的目的()A、尽可能发现并排出软件中潜藏的错误,提高软件的可靠性B、发现软件开发中出现的错误C、避免软件开发中出现的错误D、修改软件中出现的错误正确答案:B8.下列可以作为软件测试对象的是()A、需求规格说明书B、软件设计规格说明C、源程序D、以上全部正确答案:D9.下面有关软件缺陷的说法中错误的是()A、缺陷就是导致系统程序崩溃的错误B、缺陷开始软件维护过程中存在的错误、毛病等各种问题C、缺陷就是系统所需要实现某种功能的失效和违背D、缺陷就是软件产品在开发中存在的错误正确答案:A10.下列方法中,不属于黑盒测试的是()A、基于场景的测试方法B、边界值分析法C、基本路径测试法D、等价类测试法正确答案:C11.在GB/T17544中,软件包质量要求包括三部分,即产品描述要求、()、程序和数据要求A、用户文档要求B、系统功能要求C、设计要求说明D、软件配置要求正确答案:A12.用黑盒技术设计测试用例的方法之一为()A、循环覆盖B、基本路径测试C、逻辑覆盖D、因果图正确答案:D13.为了提高测试的效率,应该()A、取一切可能的输入数据作为测试数据B、选择发现错误的可能性C、随机的选取测试数据D、在完成编码以后指定软件的测试计划正确答案:B14.CMMI 共有几个级别()A、3个B、4个C、5个D、6个正确答案:C15.软件的六大质量特性包括:()A、功能性、可靠性、可用性、效率、稳定性、可移植B、功能性、可靠性、可拓展性、效率、稳定性、可移植C、功能性、可靠性、兼容性、效率、稳定性、可移植D、功能性、可靠性、可用性、效率、可维护、可移植正确答案:D16.在没有需求文档和产品说明书的情况下只有哪一种测试方法可以进行的()A、语句覆盖测试B、路径分析测试C、条件覆盖测试D、错误推断测试正确答案:D17.在模块测试的过程中,采用自底向上的测试比自顶向下的测试()A、不确定B、好C、差D、一样正确答案:B18.软件测试的目的是()A、修改软件中出现的错误B、尽可能发现并排除软件中潜藏的错误,提高软件的可靠性C、发现软件开发中出现的错误D、避免软件开发中出现的错误正确答案:C19.下列关于测试方法的叙述中不正确的是()A、对功能的测试通常是要考虑程序的内部结构B、结构测试属于白盒测试C、功能测试属于黑盒测试D、从某种角度上讲,白盒测试与黑盒测试都属于动态测试正确答案:A20.功能测试的目的是()A、保证软件的功能符合软件需求B、保证系统没有错误C、保证用户方便使用D、保证软件性能符合设计的要求正确答案:A21.Excel软件可用于()A、文字处理B、幻灯片制作C、电子表格处理D、设计程序正确答案:C22.软件可靠性是指在指定的条件下使用时,软件产品维持规定的性能级别的()A、可靠性依从性B、容错性C、易恢复性D、成熟性正确答案:B23.下列关于软件测试的叙述中,选择出全部正确的一组()1)用黑盒测试时,测试用例是根据程序内部逻辑设计的2)尽量用公共过程或子程序去代替重复的代码段3)测试是为了验证该软件已正确的实现了用户的要求4)对于连锁型分支结构,若有n个判定语句,则有2n条路径5)尽量采用复合的条件测试,以避免嵌套的分支结构6)语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁 7)发现错误多的程序模块,残留在模块中的错误也多8)黑盒测试方法中最有效的是因果图法9)在做程序的单元测试时,桩(存根)模块比驱动模块容易编写10)程序效率的提高主要应通过选择高效的算法来实现A、4)5)6)7)10)B、1)2)4)5)7)C、2)4)5)7)9)D、以上描述全部正确正确答案:A24.下列软件属性中,软件产品首要满足的应该是()A、容错纠错能力B、功能需求C、性能需求D、可扩展性和灵活性正确答案:B25.黑盒测试是从()观点出发的测试,而白盒测试是从()观点出发的测试A、用户、开发人员B、用户、管理人员C、开发人员、管理人员D、开发人员、用户正确答案:A26.坚持在软件的各个阶段实施下列哪种质量保障措施,才能在开发过程中尽早发现和预防错误,把出现的错误克服在早期()A、管理评审B、技术评审C、改正程序错误D、程序测试正确答案:B27.SQL语言中删除一个表的语句是()A、Drop tableB、Delete tableC、destroy tableD、remove table正确答案:A28.以下哪一种选项不属于软件缺陷()A、软件实现了产品规格说明所要求的功能但因受性能限制而未考虑可移植性问题B、软件中出现了产品规格说明不应该出现的功能C、软件没有实现产品规格说明所要求的功能D、软件实现了产品规格没有提到的功能正确答案:A29.下面有关测试原则的说法正确的是()A、程序最好由编写该程序的程序员自己来测试B、使用测试用例进行测试是为了检查程序是否做了它该做的事C、测试用例应由测试的输入数据和预期的输出结果组成D、测试用例只需选取合理的输入数据正确答案:C30.对程序的测试最好由谁来做,对程序的调试最好由谁来做()A、程序开发组/程序开发组B、程序开发组/程序员C、第三方测试机构/程序员D、程序员/第三方测试机构正确答案:C31.为了提高测试的效率,正确的做法是()A、随机选取测试用例B、使用测试用例测试是为了检查程序是否做了应该做的事C、在完成程序的编码之后再制定软件的测试计划D、选择发现错误可能性大的数据作为测试用例正确答案:D32.集成测试对系统内部的交互以及集成后系统功能检验了何种质量特性()A、正确性B、可靠性C、可维护性D、可使用性正确答案:A33.黑盒测试法是根据产品的()来设计测试用例的A、功能B、内部逻辑C、输入数据D、应用范围正确答案:A34.单元测试中用来模拟被测模块调用者模块是()A、子模块B、父模块C、桩模块D、驱动模块正确答案:D35.大多数实际情况下,性能测试的实现方法是()A、白盒测试B、静态分析C、黑盒测试D、可靠性测试正确答案:C36.正式的技术评审FTR(Formal Technical Review)是软件工程师组织的软件质量保证活动,下面关于FTR指导原则中错误的是()A、要有严格的评审计划,并遵守日程安排B、限制参与者人数,并要求评审会之前做好准备C、评审产品,而不是评审生产者的能力D、对评审中出现的问题要充分讨论,以求彻底解决正确答案:D37.在进行单元测试时,常用的方法是()A、只使用白盒测试B、采用白盒测试,辅之以黑盒测试C、只使用黑盒测试D、采用黑盒测试,辅之以白盒测试正确答案:A38.单元测试中设计测试用例的依据是()A、用户需求规格说明书B、详细设计规格说明书C、项目计划说明书D、概要设计规格说明书正确答案:B39.下列项目中不属于测试文档的是()A、测试报告B、程序流程图C、测试用例D、测试计划正确答案:B40.测试ATM取款功能,已知取款数只能输入正整数,每次取款数要求是100的倍数且不能大于500,下面哪个是正确的无效等价类()A、<li>(0,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞)</pre></li>B、<li>(500,+∞)</pre></li>C、<li>(500,+∞)、任意大于0小于500的非100倍数的整数</pre></li>D、<li>(-∞,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞)</pre></li>正确答案:C41.在数据结构中,从逻辑上可以把数据结构分成()A、内部结构和外部结构B、线性结构和非线性结构C、紧凑结构和非紧凑结构D、动态结构和静态结构正确答案:B42.经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现并改正的错误较多,则该模块中残存的错误数目与其他模块相比,通常应该()A、较少B、相似C、较多D、不确定正确答案:C43.通常可分为白盒测试和黑盒测试。
软件测试练习题(含参考答案)一、单选题(共100题,每题1分,共100分)1、以下关于书写缺陷报告应包含的准则说法不正确的是()A、方便阅读、注意缺陷报告书写语气B、分析故障,使用最少步骤重现缺陷C、尽量全面--将一次发现的所有缺陷放在一个报告中D、包含所有重现缺陷的必要步骤正确答案:C2、( )存储一个对话框模板,模板制定了对话框的特征,包括其大小、位置、风格以及对话框中各种控件等。
A、单模对话框B、对话框函数C、对话框模板资源D、对话框类正确答案:C3、测试的目的是( ),而不是对正确性进行形式化证明。
A、要纠正程序中的bugB、要暴露程序中的错误C、要暴露程序中的bugD、要纠正程序中的错误正确答案:B4、数据库系统是一个复杂的系统,是存储介质、处理对象和管理系统的集合体,由数据库、硬件支持系统、软件支持系统和( )四部分组成。
A、应用系统B、数据库管理员C、操作系统D、数据模型描述正确答案:B5、在VC中,如果在Menu Item属性页中选择( )复选框,表示此菜单项是一个多级菜单,并且其右边将会出现一个新菜单框。
A、inactiveB、Pop-upC、CheckedD、Grayed正确答案:B6、软件测试是软件质量保证的重要手段()是软件测试的最基础环节A、验收测试B、系统测试C、单元测试D、确认测试正确答案:C7、按存储的工作方式分类,存储器可分为( )。
A、软盘、硬盘、光盘B、半导体存储器、磁表面存储器、光存储器C、RAM、ROM、BIOSD、随机读写存储器、顺序读写存储器、只读存储器正确答案:D8、按存储的工作方式分类,磁带存储器属于( )。
A、主存储器B、随机读写存储器C、顺序读写存储器D、只读存储器正确答案:C9、下列不属于需求规格说明的特点的是:( )。
A、可重用性B、一致性C、可修改性D、完整性正确答案:A10、测试一个( ),应该用那种能暴露边界情况的测试实例,既有简单的也有较难的。
软件测试练习题一、选择题1、必须要求用户参与的测试阶段是()A. 单元测试B. 集成测试C. 确认测试D. 验收测试2、软件测试员究竟做些什么()A.软件测试员的目的是发现软件缺陷B.软件测试员的目的是发现软件缺陷,尽可能早一些C.软件测试员的目的是发现软件缺陷,尽可能早一些,并确保其得以修复D.软件测试员的目的是发现软件缺陷,尽可能早一些,并将其修复3、下列四种说法中正确的是()A.因果图法是建立在决策表基础上的一种白盒测试方法B.等价类划分法是边界值分析法的基础C.健壮性等价类测试的测试用例要求在有效等价类中取值D.在任何情况下做黑盒测试都应首先考虑使用错误推断法4、划分软件测试属于白盒测试还是黑盒测试的依据是()A.是否执行程序代码B.是否能看到设计文档C.是否能看到被测试程序D.运行结果是否确定5、下列项目中不属于测试文档的是()A.测试计划B.测试用例C.程序流程图D.测试报告6、如果某测试用例集实现了某软件的路径覆盖,那么它一定同事实现了该软件的()A.组合覆盖 B. 条件覆盖 C. 判定覆盖 D.判定/条件覆盖7、即使对程序的所有路径都进行了测试,程序也可能存在没能检查出来的缺陷,其原因可能是()A.程序可能会因为缺少某些路径而存在问题B.即使是穷举路径测试也决不可能保证程序符合其设计规格说明C.穷举路径测试也可能不会暴露数据敏感错误D.以上全部是8、一个多用户的应用系统通常有用户管理功能,允许增加新的用户。
用户信息一般包括用户名,假设规定用户名必须是以字母开头的、不超过8个字符的字母数字串。
那么,下列哪组值均属于用户名的有效等价类?()A.a111111, L, Lin-Yie, Lin-fengB.L1, a111111, glenford, 123B123C.linyifei, a111111, glenford, MyersD.linyifei, a111111, glenford, G.Myers9、下列不属于单元测试的工作内容的是()。
软件测试练习题白盒测试单元测试学号姓名1.以程序内部的逻辑结构为基础的测试用例设计技术属于()。
A.灰盒测试B.数据测试C.黑盒测试D.白盒测试2.即使对程序的所有路径都进行了测试,程序也可能存在没能检查出来的缺陷,其原因可能是()。
A.程序可能会因为缺少某些路径而存在问题B.即使是穷举路径测试也不能保证程序符合其设计规格说明C.穷举路径测试也可能不会暴露数据敏感性错误D.以上全部3.下列关于测试方法的叙述中不正确的是()。
A.从某种角度上讲,白盒测试和黑盒测试都属于动态测试B.功能测试属于黑盒测试C.对功能的测试通常要考虑程序的内部结构D.结构测试属于白盒测试4.不需要运行程序,通过收集有关代码的结构信息来对程序进行的测试是()。
A.性能测试B.黑盒测试C.白盒测试D.静态分析5.在白盒测试中,程序员要运用自己的智力和程序理解力,深入到源程序中进行测试,这样的好处是()。
A.重点测试B.数据完整性和内部边界C.测试覆盖和控制流D.以上全部6.关注在一连串的测试中如何选择合适的程序或子程序路径来执行有效的检查,这种测试极有可能是()。
A.结构测试B.黑盒测试C.功能测试D.静态测试7.在覆盖准则中,最常用的是()。
A.语句覆盖B.条件覆盖C.分支覆盖D.以上全部8.大多数实际情况下,性能测试的实现方法是()。
A.黑盒测试B.白盒测试C.静态分析D.可靠性测试9.如果一个判定中的复合条件表达式为(A>1)or(B<=3),则为了达到100%的条件覆盖率,至少需要设计()个测试用例。
A.1B.2C.3D.410.下列逻辑覆盖中,最强的是()A.语句覆盖B.条件覆盖C.路径覆盖D.条件组合覆盖11.关于逻辑覆盖,说法错误的是()。
A.DDP(判定路径覆盖)是判定覆盖的一个变体B.满足条件覆盖也一定满足判定覆盖C.指令块覆盖属于语句覆盖D.若判定覆盖率达到100%,则语句覆盖率也达到100%。
软件测试综合练习题一、名词解释题1、测试用例2、驱动模块3、回归测试4、静态测试5、桩模块6、强度测试7、软件测试8、自动化测试9、动态测试10、独立路径二、问答题1、软件测试涉及哪些关键问题?2、简述软件测试过程的流程。
3、为什么说软件测试必须有预期结果?4、什么是测试用例?5、简述黑盒测试和白盒测试概念,并试分析两者的优点和缺点。
6、采用白盒测试法设计测试用例时,常用的逻辑覆盖测试方法有哪几种?请简单描述各种方法的目的。
7、黑盒测试有哪几种方法?请简单描述各种方法的特点。
8、简析已学的各种黑盒测试方法的特点,并分析如何选择恰当的黑盒测试方法?9、简介WEB应用程序在压力下的常见错误类型。
10、单元测试的主要任务是什么?11、简述自顶向下增量式测试和自底向上增量式测试两种集成测试方法,并比较两者的优点和缺点。
12、简述在哪些测试模块中应优先考虑引入自动化测试?自动化测试可以带来哪些优点?13、在软件工程或软件测试中,哪些软件问题被称为软件缺陷?14、简述软件测试与软件开发各阶段的关系。
15、在测试实施之前,如何才能确定好的测试策略和测试方法?16、简述软件测试的目的和原则。
17、为什么在单元测试之后要进行集成测试?如何组织集成测试?18、当WinRunner识别完GUI对象后,会将GUI对象的属性储存在GUI Map File,WinRunner提供二种GUI Map File模式: GUI Map File per Test模式与Global GUI Map File模式。
(1)请比较这两种GUI Map File 模式的优点和缺点。
(2)请分别说明在这两种GUI Map File模式下,WinRunner可以通过哪些方式学习被测软件的GUI?19、介绍在 WinRunner 中GUI映射文件(GUI Map File)的作用。
20、什么是数据驱动脚本?简介在Winrunner中如何实现数据驱动脚本21、WinRunner 可以帮助用户自动处理从测试开发到测试执行的整个过程,可以创建可修改和可复用的测试脚本,而不用担心软件功能模块的变更。
软件测试试题及答案答案一、单项选择题(每题2分,共10分)1. 软件测试的目的是:A. 证明软件无缺陷B. 证明软件存在缺陷C. 证明软件符合需求规格D. 证明软件符合设计规格答案:B2. 黑盒测试的主要依据是:A. 程序内部逻辑B. 程序外部特性C. 程序数据结构D. 程序运行环境答案:B3. 以下哪个不是软件测试的阶段?A. 单元测试B. 集成测试C. 系统测试D. 维护测试答案:D4. 软件测试中,测试用例的主要目的是:A. 验证软件功能B. 验证软件性能C. 验证软件安全性D. 所有选项答案:D5. 以下哪个不是软件测试的类型?A. 功能测试B. 性能测试C. 压力测试D. 需求测试答案:D二、多项选择题(每题3分,共15分)1. 软件测试过程中可能遇到的问题包括:A. 缺陷B. 错误C. 故障D. 风险答案:ABCD2. 软件测试的基本原则包括:A. 测试显示存在缺陷B. 测试不能证明不存在缺陷C. 穷尽测试是不可能的D. 早期测试答案:ABCD3. 软件测试的目的是:A. 验证软件符合需求B. 验证软件符合设计C. 验证软件符合实现D. 验证软件符合标准答案:ABD4. 以下哪些是软件测试的方法?A. 静态测试B. 动态测试C. 黑盒测试D. 白盒测试答案:ABCD5. 软件测试的文档通常包括:A. 测试计划B. 测试用例C. 测试报告D. 用户手册答案:ABC三、判断题(每题1分,共10分)1. 软件测试可以完全替代用户测试。
(错误)2. 软件测试的目的是发现尽可能多的缺陷。
(正确)3. 软件测试可以在软件开发过程的任何阶段进行。
(正确)4. 软件测试可以提高软件的可靠性。
(正确)5. 软件测试可以降低软件维护的成本。
(正确)6. 软件测试可以证明软件没有缺陷。
(错误)7. 软件测试只能发现软件中的错误。
(错误)8. 软件测试可以提高用户对软件的满意度。
(正确)9. 软件测试可以减少软件的缺陷。
L对手机软件的压力测试通常可以包括(ABC)A存储压力B响应能力压力C网络流量压力D并发压力2 .软件验收测试的合格通过准则(ABCD)A软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B所有测试项没有残余一级、二级和三级错误。
C立项审批表、需求分析文档、设计文档和编码实现一致。
D验收测试工件齐全。
3 .考察知识点:黑盒测试方法:等价类、边界值、因果图、错误推测(功能测试或数据驱动测试)白盒测试:(结构测试或逻辑驱动测试)路径测试、条件判断、循环测试、语句覆盖、判定条件覆盖等4 .有关''测试驱动开发〃,下列说法正确的有?(ABCD)A.TDD的原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码B.TDD的基本思路就是通过测试来推动整个开发得进行,但测试驱动开发并不只是单纯的测试工作,而是把需求分析,设计,质量控制量化的过程。
C.TDD的重要目的不仅仅是测试软件,测试工作保证代码质量仅仅是其中一部分,而且是在开发过程中帮助客户和程序员去除模棱两可的需求。
D.TDD首先考虑使用需求(对象、功能、过程、接口等),主要是编写测试用例框架对功能的过程和接口进行设计,而测试框架可以持续进行验证。
扩展:测试驱动开发是敏捷开发中的一项核心实践和技术,也是一种设计方法论。
TDD得原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。
TDD虽是敏捷方法的核心实践,但不只适用于XP(ExtremePrOgramming),同样可以适用于敏感词开发方法和过程。
TDD得基本思路就是通过测试来推动整个开发得进行,但测试驱动开发并不只是单纯的测试工作,而是把需求分析,设计,质量控制量化的过程。
TDD的重要目的不仅仅是测试软件,测试工作保证代码质量仅仅是其中一部分,而且是在开发过程中帮助客户和程序员去除模棱两可的需求。
TDD首先考虑使用需求(对象、功能、过程、接口等),主要是编写测试用例框架对功能的过程和接口进行设计,而测试框架可以持续进行验证。
练习题、判断(01)测试是为了验证软件已正确地实现了用户的要求。
错(02)白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。
对(03)白盒测试不仅与程序的内部结构有关,还要考虑程序的功能要求。
错(04)程序员兼任测试员可以提高工作效率。
错(05)黑盒测试的测试用例是根据应用程序的功能需求设计的。
对(06)当软件代码开发结束时,软件测试过程才开始。
错(07)据有关数据统计,代码中60%以上的缺陷可以通过代码审查发现出来。
对(08)无效等价类是无效的输入数据构成的集合,因此无需考虑无效的等价类划分。
错(09)软件本地化就是将一个软件产品按特定国家或语言市场的需要翻译过来。
错(10)在压力测试中通常采用的是黑盒测试方法。
对(11)软件测试员无法对产品说明书进行白盒测试。
对(12)功能测试工具主要适合于回归测试。
对(13)测试人员说:“没有可运行的程序,我无法进行测试工作”。
错(14)自底向上集成需要测试员编写驱动程序。
对(15)测试是可以穷尽的。
错(16)自动化测试相比手工测试而言,能发现更多的错误。
错(17)软件测试自动化可以提高测试效率,可以代替手工测试。
错(18)语句覆盖法的基本思想是设计若干测试用例,运行被测程序,使程序中的每个可执行语句至少被执行一次。
对(19)Beta测试是验收测试的一种。
对(20)软件开发全过程的测试工作都可以实现自动化。
错(21)软件只要经过严格严谨的内部测试之后,可以做到没有缺陷。
错(22)结构性测试是根据软件的规格说明来设计测试用例。
错(23)软件测试工具可以代替软件测试员。
错(24)通过软件测试,可以证明程序的正确性。
错(25)在单元测试中,驱动程序模拟被测模块工作过程中所调用的下层模块。
错(26)软件缺陷可能会被修复,可能会被保留或者标识出来。
对(27)测试用例是由测试输入数据和对应的实际输出结果这两部分组成。
错(28)单元测试通常由开发人员进行。
对(29)现在人们普遍认为软件测试不应该贯穿整个软件生命周期,而应在编程完毕之后再进行,这样可以降低成本。
软件测试练习题一、选择题1.软件测试的目的是()。
A)试验性运行软件B)发现软件错误C)证明软件正确D)找出软件中全部错误2.软件测试中白盒法是通过分析程序的()来设计测试用例的。
A)应用范围B)内部逻辑C)功能D)输入数据3.黑盒法是根据程序的()来设计测试用例的。
A)应用范围B)内部逻辑C)功能D)输入数据4.为了提高软件测试的效率,应该()。
A)随机地选取测试数据B)取一切可能的输入数据作为测试数据C)在完成编码以后制定软件的测试计划D)选择发现错误可能性最大的数据作为测试用例5.软件测试用例主要由输入数据和()两部分组成。
A)测试计划B)测试规则C)预期输出结果D)以往测试记录分析6.成功的测试是指运行测试用例后()。
A)未发现程序错误B)发现了程序错误C)证明程序正确性D)改正了程序错误7.下列几种逻辑覆盖标准中,查错能力最强的是()。
A)语句覆盖B)判定覆盖C)条件覆盖D)条件组合覆盖8.单元测试主要针对模块的几个基本特征进行测试,该阶段不能完成的测试是()。
A)系统功能B)局部数据结构C)重要的执行路径D)错误处理9.不属于白盒测试的技术是()。
A)路径覆盖B)判定覆盖C)循环覆盖D)边界值分析10.集成测试时,能较早发现高层模块接口错误的测试方法为()。
A)自顶向下渐增式测试B)自底向上渐增式测试C)非渐增式测试D)系统测试11.确认测试以()文档作为测试的基础。
A)需求规格说明书B)设计说明书C)源程序D)开发计划12.程序的三种基本结构是()。
A)过程子、程序、分程序B)顺序、选择、循环C)递归、堆栈、队列D)调用、返回、转移13.结构化程序设计的一种基本方法是()A)筛选法B)递归法C)归纳法D)逐步求精法14.软件调试的目的是()A)找出错误所在并改正之B)排除存在错误的可能性C)对错误性质进行分类D)统计出错的次数15.程序三种基本结构的共同特点是()A)不能嵌套使用B)只能用来写简单程序C)已经用硬件实现D)只有一个入口和一个出口16.下面说法正确的是( )。
软件测试题库及答案一、单选题1. 软件测试的目的是:A. 证明软件是正确的B. 发现软件中的错误C. 确保软件满足需求D. 确保软件没有错误答案:B2. 以下哪项不是黑盒测试的测试用例设计技术?A. 等价类划分B. 边界值分析C. 决策表测试D. 路径测试答案:D3. 单元测试通常由谁执行?A. 测试人员B. 用户C. 开发人员D. 项目经理答案:C4. 以下哪个不是软件测试的阶段?A. 单元测试B. 集成测试C. 系统测试D. 维护测试答案:D5. 软件测试中的错误注入通常发生在哪个阶段?A. 需求分析B. 设计阶段C. 编码阶段D. 测试阶段答案:C二、多选题1. 软件测试的类型包括:A. 功能测试B. 性能测试C. 可用性测试D. 安全测试E. 回归测试答案:ABCDE2. 以下哪些是软件测试的原则?A. 测试可以显示存在缺陷B. 穷尽测试是不可能的C. 早期测试可以节省成本D. 缺陷聚集原则E. 测试应该提供信息以支持决策答案:ABCDE3. 软件测试的目的是:A. 验证软件是否符合需求B. 验证软件是否符合设计C. 验证软件是否符合编码标准D. 验证软件是否符合性能要求E. 验证软件是否符合安全要求答案:ABDE4. 软件测试的文档包括:A. 测试计划B. 测试用例C. 测试报告D. 缺陷报告E. 用户手册答案:ABCD5. 软件测试的自动化工具可以用于:A. 自动化测试用例执行B. 测试用例生成C. 缺陷跟踪D. 性能监控E. 安全扫描答案:ABCDE三、判断题1. 软件测试可以完全替代人工测试。
(错误)2. 软件测试的目的是确保软件没有错误。
(错误)3. 软件测试应该在编码阶段完成后开始。
(错误)4. 测试用例应该包括预期结果。
(正确)5. 回归测试是确认修改后的软件是否引入新缺陷的过程。
(正确)四、简答题1. 请简述软件测试的目的是什么?答案:软件测试的目的是发现软件中的错误,验证软件是否满足需求,确保软件的质量。
软件测试试题及答案一、选择题1. 软件测试的目的是()。
A. 证明程序正确B. 证明程序错误C. 发现并修复缺陷D. 提高程序运行速度答案:C2. 下列哪项不是黑盒测试的类型?()。
A. 功能测试B. 性能测试C. 兼容性测试D. 结构测试答案:D3. 在软件测试中,白盒测试主要关注()。
A. 代码的可读性B. 代码的执行效率C. 代码的逻辑结构D. 用户的使用体验答案:C4. 单元测试通常关注于()。
A. 整个软件系统的功能B. 软件系统的集成接口C. 单个组件的功能正确性D. 软件的性能和稳定性答案:C5. 以下哪种测试方法不需要运行程序?()。
A. 静态测试B. 动态测试C. 冒烟测试D. 回归测试答案:A二、判断题1. 软件测试仅限于找出软件缺陷。
(错误)2. 自动化测试可以提高测试效率和覆盖率。
(正确)3. 测试用例是为特定的软件测试目的而设计的一组输入、执行条件和预期结果。
(正确)4. 所有的软件缺陷都必须被修复后产品才能发布。
(错误)5. 灰盒测试结合了黑盒测试和白盒测试的特点。
(正确)三、简答题1. 请简述软件测试的基本原则。
答:软件测试的基本原则包括:应尽早开始测试,测试应持续进行;缺陷集群现象,即缺陷往往会在代码的某个特定区域集中出现;杀虫剂悖论,即相同的测试用例重复使用会降低其有效性;测试应具有可追溯性,以确保测试覆盖了所有的需求。
2. 什么是测试用例设计技巧?答:测试用例设计技巧是指为了有效地设计测试用例而采用的一系列方法和策略。
这些技巧包括等价类划分、边界值分析、因果图法、状态转换测试等。
它们帮助测试人员识别可能的输入数据和预期行为,从而设计出能够覆盖软件功能各个方面的测试用例。
3. 描述黑盒测试和白盒测试的主要区别。
答:黑盒测试是一种测试方法,主要关注软件的功能需求,而不关心其内部结构或实现细节。
测试人员像用户一样使用软件,检查功能是否按预期工作。
白盒测试则关注软件内部的逻辑结构,测试人员需要了解程序的源代码,并根据代码的逻辑路径设计测试用例,以确保代码的每个部分都经过了测试。
一、判断题(正确的“√”,错误的“╳”)2、测试程序仅仅按预期方式运行就行了。
(F )3、不存在质量很高但可靠性很差的产品。
(F )4、软件测试员可以对产品说明书进行白盒测试。
(F )5、静态白盒测试可以找出遗漏之处和问题.( T)6、总是首先设计白盒测试用例.(F )7、可以发布具有配置缺陷的软件产品.(T )8、所有软件必须进行某种程度的兼容性测试.(T )9、所有软件都有一个用户界面,因此必须测试易用性。
(F )10、测试组负责软件质量。
(F )11、软件测试按照测试过程分类为黑盒、白盒测试.( F)12、在设计测试用例时,应包括合理的输入条件和不合理的输入条件. (T)13、集成测试计划在需求分析阶段末提交。
(F )14、单元测试属于动态测试。
(F )15、缺陷跟踪系统只针对测试人员来使用。
(F )16、从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。
( F)17、项目立项前测试人员不需要提交任何工件。
( F)18、软件测试的目的是尽可能多的找出软件的缺陷。
( F)19、软件项目在进入需求分析阶段,测试人员应该开始介入其中。
(T )20、软件生存周期是从软件开始开发到开发结束的整个时期。
( F)21、单元测试能发现约80%的软件缺陷.( F)22、数据流图和数据字典共同构成系统的逻辑模型.(T )23、负载测试是验证要检验的系统的能力最高能达到什么程度。
(F )24、测试人员要坚持原则,缺陷未修复完坚决不予通过。
(T25、代码评审员一般由测试员担任。
( F)26、测试组负责软件质量。
(F )27、程序的效率与程序的复杂性相关。
(F )28、详细设计的目的是为软件结构图中的每一个模块确定使用的算法和块内数据结构,并用某种选定的表达工具给出清晰的描述。
(T )29、软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。
(T )30、测试程序仅仅按预期方式运行就行了。
软件测试习题库+答案一、单选题(共100题,每题1分,共100分)1.以下不属于测试计划设计的工具的是()A、WordB、ExcelC、ProjectD、PPT正确答案:D2.模块是组成软件结构的基本元素,它是( )的集合。
A、变量定义和功能实现B、变量和函数C、数据说明和算法D、软件描述和实现正确答案:C3.软件管理按时间可划分为( )和使用维护管理。
A、开发进度管理B、生产管理C、技术管理D、软件设计管理正确答案:B4.著作权亦称( ),是指著作权人对其作品享有的专有权利。
A、版权B、许可权C、产权D、专利权正确答案:A5.面向对象测试中测试类定义的每种方法,基本上相当于传统软件测试中的( )。
A、验证测试B、单元测试C、系统测试D、模块测试正确答案:B6.十进制数(307)10转换为十六进制数的结果是( )。
A、(226)16B、(133)16C、(281)16D、(186)16正确答案:B7.下列选项中关于软件测试叙述错误的是()A、软件测试可以作为度量软件与用户需求间差距的手段B、软件测试的根本目的是尽可能多地发现问题并排除潜在的错误,最终把一个高质量的软件系统交给用户使用。
C、没有发现错误的测试也是有价值的D、软件测试的目的是暴露问题正确答案:B8.虚拟机好似通用的计算机,有自己的指令系统,但本身没有( )。
A、翻译程序B、实际的硬件C、翻译指令D、操作系统正确答案:B9.( )是采用人—机对话的方式控制作业的运行。
A、实时作业控制B、脱机作业控制C、联机作业控制D、动态作业控制正确答案:C10.在Bugzilla中,如果一个缺陷的处理状态被开发人员置为Wontfix,则表明()A、这个Bug中描述的B、这个Bug 中描述的是问题,但不修改C、根据这个Bug的描述无法查找问题的原因并解决,需要提供更多的关于这个Bug的信息D、这个Bug描述的是问题,但不能确定是否在这个版本中修改正确答案:B11.为了对我们所设计的系统进行测试,我们使用测试工具模拟上万个用户从终端同时登陆,找出因资源不足而导致的错误,你认为现在最有可能进行的测试活动是()A、负载测试B、安全测试C、容量测试D、压力测试正确答案:A12.( )方法的主要优点包括:与人类习惯的思维方法一致、稳定性好、可重用性好、可维护性好。
软件测试考试题库及答案一、单项选择题1. 软件测试的目的是()。
A. 证明软件是正确的B. 发现软件中的错误C. 证明软件是错误的D. 证明软件没有错误答案:B2. 黑盒测试主要关注软件的()。
A. 内部结构B. 内部逻辑C. 功能D. 代码答案:C3. 单元测试通常由()执行。
A. 项目管理者B. 开发人员C. 测试人员D. 客户答案:B4. 软件测试中,回归测试是指()。
A. 测试新发现的错误B. 测试软件的新功能C. 在修改后重新运行测试用例以验证错误是否被修复D. 测试软件的安全性答案:C5. 软件测试的V模型中,测试活动应该在开发活动的()进行。
A. 之前B. 同时C. 之后D. 任意时间答案:C二、多项选择题1. 以下哪些是软件测试的类型?()A. 功能测试B. 性能测试C. 压力测试D. 界面测试答案:ABCD2. 软件测试的基本原则包括()。
A. 测试显示存在错误B. 穷尽测试是不可能的C. 早期测试D. 缺陷聚集答案:ABCD3. 软件测试过程中可能使用的工具包括()。
A. 缺陷跟踪系统B. 自动化测试框架C. 性能监控工具D. 代码审查工具答案:ABCD三、判断题1. 软件测试可以完全替代人工检查。
()答案:错误2. 测试应该在软件开发的后期进行。
()答案:错误3. 软件测试的目的是确保软件产品的质量。
()答案:正确四、简答题1. 请简述什么是软件测试?答案:软件测试是一系列旨在评估软件质量的活动,目的是验证软件的功能、性能、安全性等是否符合预期,并发现软件中可能存在的缺陷。
2. 描述软件测试的基本流程。
答案:软件测试的基本流程通常包括测试计划、测试设计、测试实施、测试执行和测试报告等阶段。
五、案例分析题1. 假设你是一个软件测试工程师,你被分配到一个项目中,该项目的软件产品是一个在线购物平台。
请描述你将如何进行测试计划的制定。
答案:在制定测试计划时,我会首先了解项目的需求和目标,确定测试的范围和重点。
测试软件考试题及答案一、单项选择题(每题2分,共10题)1. 软件测试的主要目的是:A. 证明软件是正确的B. 证明软件存在错误C. 发现软件中的缺陷D. 证明软件不存在缺陷答案:C2. 黑盒测试不关心的是:A. 输入数据B. 输出结果C. 程序内部逻辑D. 测试用例答案:C3. 单元测试通常由以下哪个角色执行:A. 项目经理B. 开发人员C. 测试人员D. 业务分析师答案:B4. 以下哪个不是软件测试的类型:A. 功能测试B. 性能测试C. 压力测试D. 需求测试答案:D5. 软件测试的生命周期阶段不包括:A. 测试计划B. 测试设计C. 测试执行D. 需求分析答案:D6. 软件测试的基本原则之一是:A. 测试应该尽早进行B. 测试应该在编码之后进行C. 测试应该在需求分析之后进行D. 测试应该在设计阶段进行答案:A7. 以下哪个是自动化测试的优势:A. 减少测试时间B. 增加测试成本C. 降低测试覆盖率D. 减少测试人员答案:A8. 软件缺陷的严重性等级不包括:A. 致命B. 严重C. 一般D. 轻微E. 可忽略答案:E9. 软件测试中的回归测试是指:A. 在软件发布后进行的测试B. 在软件修改后进行的测试C. 在软件部署前进行的测试D. 在软件需求变更后进行的测试答案:B10. 软件测试中的风险分析不包括:A. 识别风险B. 评估风险C. 缓解风险D. 增加风险答案:D二、多项选择题(每题3分,共5题)1. 软件测试的常见类型包括:A. 功能测试B. 性能测试C. 安全测试D. 可用性测试E. 兼容性测试答案:ABCDE2. 软件测试过程中可能遇到的问题包括:A. 测试资源不足B. 测试时间不足C. 测试环境不稳定D. 测试用例不充分E. 测试人员技能不足答案:ABCDE3. 软件测试中,以下哪些是测试用例的组成部分:A. 测试数据B. 测试步骤C. 预期结果D. 测试环境E. 测试工具答案:ABC4. 软件测试中的风险缓解措施包括:A. 增加测试时间B. 增加测试人员C. 提高测试自动化水平D. 改进测试用例设计E. 增加软件的复杂性答案:ABCD5. 软件测试报告中通常包含的信息有:A. 测试范围B. 测试结果C. 发现的缺陷D. 测试覆盖率E. 测试建议答案:ABCDE三、简答题(每题5分,共2题)1. 请简述软件测试中“测试用例”的定义及其重要性。
大学软件测试题及答案一、选择题(每题2分,共20分)1. 软件测试的目的是()。
A. 找出尽可能多的软件错误B. 证明软件是正确的C. 验证软件是否满足需求规格说明D. 确保软件没有错误2. 黑盒测试与白盒测试的主要区别在于()。
A. 测试用例的设计方法B. 测试的执行环境C. 测试的执行时间D. 测试的执行人员3. 以下哪个不是软件测试的基本原则()。
A. 穷尽测试是不可能的B. 早期测试C. 缺陷聚集D. 测试应该在编码之后进行4. 软件测试计划应该包括以下哪些内容()。
A. 测试目标B. 测试环境C. 测试用例D. 所有选项5. 单元测试通常由()来执行。
A. 测试人员B. 开发人员C. 项目经理D. 质量保证人员6. 以下哪个不是软件测试的类型()。
A. 功能测试B. 性能测试C. 可用性测试D. 代码审查7. 软件缺陷的严重性等级通常不包括()。
A. 致命B. 严重C. 一般D. 可选8. 压力测试属于()测试的范畴。
A. 功能B. 性能C. 可用性D. 安全性9. 软件测试中,回归测试的目的是()。
A. 验证新添加的功能B. 验证修复的缺陷C. 验证软件的整体性能D. 验证软件的安全性10. 以下哪个不是软件测试工具的作用()。
A. 辅助测试用例的设计B. 记录测试结果C. 减少测试时间D. 编写测试代码二、填空题(每题2分,共20分)1. 软件测试的目的是_________软件是否满足需求规格说明。
2. 黑盒测试不关心程序的内部结构和处理过程,只关注程序的_________。
3. 软件测试的基本原则之一是_________测试是不可能的。
4. 软件测试计划应该包括测试目标、测试环境、测试用例以及_________。
5. 单元测试通常由_________来执行,以确保每个模块能够正确工作。
6. 软件测试的类型包括功能测试、性能测试、可用性测试和_________。
7. 软件缺陷的严重性等级通常包括致命、严重、一般和_________。
一.测试基础:1.瀑布模型软件生命周期分为哪些阶段计划阶段需求分析阶段设计阶段编码阶段测试阶段运行维护阶段2.软件测试的预防目的,是预防什么尽早返现、尽早解决,避免问题延后导致的问题扩大化发现问题找出问题原因,并实施改进,从而避免同类问题的再次发生3.软件测试的对象包括哪些可执行的程序开发这个程序的一切中间过程产品,包括需求文档、设计文档、源代码该程序所在的运行环境4.设计阶段要设计哪2个文档,中英文名分别叫什么?概要设计,HLD详细设计,LLD5.软件研发团队中包括哪些角色?项目经理需求分析人员设计人员编码人员测试人员QA配置管理人员二.测试方法:6.说一下白盒测试、黑盒测试、灰盒测试的区别黑盒测试:把测试对象看做一个黑盒子,不考虑内部逻辑,只依据外部规格要求,检查产品的实际规格是否符合要求的测试方法。
白盒测试:把测试对象看做一个打开的盒子,利用设计的内部逻辑结构,对产品运行逻辑进行测试的方法。
灰盒测试:是介于白盒测试与黑盒测试之间的,灰盒测试关注输出对于输入的正确性,同时也关注内部表现。
7.说一下白盒测试、黑盒测试各自的优缺点黑盒测试优点:1.符合使用者的视角,测试人员容易理解、容易执行2.对测试人员技能要求不高,工作量相对较小3.发现的问题都是和规格不一致的异常黑盒测试缺点:1.难于考虑到因设计引入的新的测试项,导致测试有遗漏2.难于对复杂业务进行充分覆盖的测试3.发现问题相对较难定位白盒测试优点:1.深入到最底层逻辑进行测试,能发现深层次问题2.逻辑覆盖充分,可达到足够高的覆盖率3.发现问题后定位解决问题成本低白盒测试缺点:1.测试技能要求高,测试工作量绝大2.发现的不一定是规格上的缺陷8.功能测试自动化适用的场合回归次数多质量要求高版本迭代变化不大9.静态测试和动态测试的区别静态测试,无需运行被测试对象,而是直接观察,通常静态测试的对象是文档和源代码动态测试,运行被测试产品,观察产品运行时的表现现象。
通常测试对象是可执行的程序。
10.对自动化能否取代手工测试这个问题,你是怎么理解的?自动化测试无法取代手工测试。
因为:1.自动化测试适用的场合比较少,而手工测试适合于大部分场合2.自动化测试解决的不是测试的质量问题,而是测试的效率问题,单纯靠自动化测试无法发现产品突发性的问题3.正常的测试过程中,手工测试居主,对没有修改的模块进行回归测试,才是自动化测试的主要适用场合通过对大部分没有修改模块的自动化测试,可以大大节约人力,来投入到更需要手工测试的复杂或修改过的模块,通过更细致的手工测试来提高产品质量三.测试过程:11.软件测试过程一般划分为几个阶段?每个阶段的测试重点是什么?单元、集成、系统、验收单元测试主要测试单元内部的数据结构、逻辑控制、异常处理等集成测试主要测试模块之间的接口和接口数据传递关系,以及模块组合后的整体功能系统测试主要测试整个系统相对于需求的符合度验收测试主要测试产品是否达到用户可使用的状态12.瀑布模型与双v模型的优缺点瀑布模型有以下优点:1)为项目提供了按阶段划分的检查点。
2)当前一阶段完成后,您只需要去关注后续阶段。
3)可在迭代模型中应用瀑布模型。
瀑布模型有以下缺点:1)在项目各个阶段之间极少有反馈。
2)只有在项目生命周期的后期才能看到结果。
3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。
双V模型的优点:1)将测试贯穿到整个软件的生命周期中,且除了代码要测试,需求、设计等都要测试。
2)测试更早的介入到软件开发中,能尽早的发现缺陷进行修复。
3)测试与开发独立起来,并与开发并行。
双V模型的缺点:1)对有些项目,开发过程中根本没有文档产生,故W模型无法使用。
2)对于需求和设计的测试技术要求很高,实践起来很困难。
13.什么是回归测试?你们公司是如何做回归测试的?回归测试,即就是在软件生命周期中,只要软件发生了改变,就可能给该软件产产生问题;所以,每当软件发生变化时,我们就必须重新测试现有的功能,以便确定修改是否达到了预期的目的,检查修改是否破坏原有的正常功能。
回归测试可以发生在任何一个阶段,包括单元测试、集成测试和系统测试。
回归测试实施过程:1、在测试策略制定阶段,制定回归测试策略2、确定需要回归测试的版本3、回归测试版本发布,按照回归测试策略执行回归测试4、回归测试通过,关闭缺陷跟踪单(问题单)5、回归测试不通过,缺陷跟踪单返回开发人员,开发人员重新修改问题,再次提交测试人员回归测试14.回归测试的策略有哪些?完全重复的回归测试策略选择性重复的回归测试策略,包括了错误修改法、周边影响法、指标达成法15.你们公司的测试流程是什么?1)需求评审-需求定稿,测试人员理解需求2)测试组长发布测试计划3)测试人员进行测试方案的编写及评审4)测试人员根据测试方案定稿进行测试类型选择、测试用例的编写和评审5)测试人员根据测试用例进执行功能、性能、易用性、安装性、健壮性、恢复性等各类型的测试6)发现问题提交缺陷,并审核缺陷7)修复后,进行回归测试确认bug修复,关闭bug8)编写测试报告及总结9)提交过程文档到知识库。
四.测试覆盖率:1、白盒测试的覆盖率有哪些?如何计算的?1)语句覆盖率:所有的用例运行被测试程序后,执行到的语句所占总语句的比率覆盖率=所有用例执行到的语句/总语句2)判定覆盖率:所有的用例运行被测试程序后,执行到的取真/取假分支总数所占总分支数的比率覆盖率=(所有用例执行到的取真分支数+取假分支数)/总分支数3)条件覆盖率:所有的用例运行被测试程序后,执行到的条件取真值假值总数所占总条件取值的比率覆盖率:(所有用例执行到条件的取真值+取假值)/总条件取值数4)判定-条件覆盖率:所有的用例运行被测试程序后,执行到的条件取真假值总数与判定真假分支的总数所占总条件取值以及总的判定分支总数的比率覆盖率:(所有用例执行到条件的取值数+执行到分支数)/(总条件取值+总分支的取值)5)条件组合覆盖率:所有的用例运行被测试程序后,执行到的条件组合总数所占总条件组合的比率所有用例执行到条件组合数/总条件组合数6)路径覆盖率:所有的用例运行被测试程序后,执行到的路径数所占总路径的比率执行到路径数/总路径数2、黑盒测试的覆盖率如何计算?所有测试用例的测试点所占所有需求的测试点的比例,因此,必须将需求的大概的所有测试点分析出来3、覆盖率越全面越好吗?不是,覆盖率越高,测试设计及执行的成本会越高;因此只要重要的测试点覆盖到就满足覆盖率的要求了4、常用的白盒测试设计技术逻辑覆盖测试、基本路径测试、程序插装、循环覆盖测试5、什么是基本路径测试?一种常用的白盒测试用例设计方法,设计用例的步骤如下:1)分析程序的控制流图2)分析控制构造的环路复杂性3)导出基本可执行路径集合4)设计测试用例5)保证程序的每一个可执行语句至少执行一次五.用例写作:测试用例应包含的主要项目?答:测试用例编号、测试项目测试标题、重要级别、预置条件、输入数据、操作步骤、预期输出用例预置条件的作用?答:执行当前测试用例需要的前提条件,如果这些前提条件不满足,则后面的测试步骤无法进行或者无法得到预期结果。
前提条件必须是最近接近操作步骤的条件,不要离得太远了。
预期结果可能包含哪些内容?答:当前测试用例的预期输出结果,包括返回值的内容、界面的响应结果、输出结果的规则符合度等等六.缺陷管理:提交的缺陷开发不认可怎么办首先和开发沟通,看是否能说服对方,或者被对方说服如果双方达成不了共识,那么就可以上交给测试组长或者经理,由他去协调,如果项目组中有ccb组织,可以上ccb进行裁决缺陷提单后的处理流程简化版提单过程:测试人员提单后直接交给开发人员确认是否是问题,如果是则进行修改,改好后交给测试人员在新版本上做回归测试。
回归测试通过则问题单关闭,不通过则返回开发人员重新修改(具体可以参照ppt上的流程图来讲解,如果觉得自己表达能力有限,怕说不清楚,可以用纸笔给面试官一边画一边讲)缺陷单的主要内容编号,测试环境,测试版本,缺陷描述,操作步骤,预期结果,实际结果,严重程度等七.系统测试请描述常见的系统测试类型有哪些?功能测试、性能测试(负载测试、压力测试、并发测试、基准测试……)、异常测试、界面测试、易用性测试、安装测试、兼容性测试……什么是异常测试?异常测试,是检测系统对异常情况的处理。
异常测试覆盖硬件或软件异常时的处理。
测试方应通过人为制造错误情况测试系统对错误操作、错误报文的反应,检查程序中的屏幕或页面是否给出了清晰且充分的提示或约束;一旦出现错误情况,系统是否能正常报告,并检查系统的错误提示是否清晰且充分;测试系统是否处理了用户的异常操作,还是造成死机或处理错误。
只有通过异常测试的软件产品,才可以保证软件在正式上线后长时间的保持良好的运营状态,给最终用户以信心。
异常测试的结果也有助于为我们进一步的系统优化设计积累经验,设计和测试是一个相互反馈的过程。
八.单元测试1)junit中有哪些注解,分别表示什么意思?注解(Annotation)@Test: 测试方法@Ignore: 被忽略的测试方法@Before: 每一个测试方法之前运行@After: 每一个测试方法之后运行@BeforeClass: 所有测试开始之前运行@AfterClass: 所有测试结束之后运行2)例举常用的断言5个Assert.assertEqualsAssert.assertNotEqualsAssert.assertTrueAssert.assertArrayEqualsAssert.assertNull3)单元测试,集成测试,系统测试的区别a)测试方法不同单元测试属于白盒测试范畴集成测试属于灰盒测试范畴系统测试属于黑盒测试范畴b)考察范围不同单元测试主要测试单元内部的数据结构,逻辑控制,异常处理等集成测试主要测试模块之间的接口和接口数据传递关系,以及模块组合后的整体功能c)系统测试主要测试整个系统相对于需求的符合度评估基准不同单元测试的评估基准主要是逻辑覆盖率集成测试的评估基准主要是接口覆盖率系统测试的评估主要是测试用例对需求规格的覆盖率4)什么是驱动单元和桩单元驱动单元:用来模拟被测试单元的上层单元,相当于被测函数的主程序桩单元:用来代替被测单元工作过程中调用的子单元5)单元测试的策略有哪些,方法是什么?分别有什么优缺点a)孤立的测试策略方法:不考虑每个模块与其他模块之间的关系,为每个模块设计桩模块和驱动模块,每个模块进行独立的单元测试优点:最简单,最容易操作,可以达到高的结构覆盖率缺点:桩函数和驱动函数工作量很大,效率低b)自顶向上的测试策略方法:不考虑每个模块与其他模块之间的关系,为每个模块设计桩模块和驱动模块,每个模块进行独立的单元测试优点:最简单,最容易操作,可以达到高的结构覆盖率缺点:桩函数和驱动函数工作量很大,效率低c)自顶向下的测试策略方法:不考虑每个模块与其他模块之间的关系,为每个模块设计桩模块和驱动模块,每个模块进行独立的单元测试优点:最简单,最容易操作,可以达到高的结构覆盖率缺点:桩函数和驱动函数工作量很大,效率低6)桩模块、驱动模块的概念。