软件测试考试复习含测试试题答案

合集下载

软件测试基础试题及答案

软件测试基础试题及答案

软件测试基础试题及答案一、单项选择题(每题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. 软件测试可以完全替代人工测试。

软件测试复习题及参考答案

软件测试复习题及参考答案

软件测试复习题及参考答案一、单选题(共100题,每题1分,共100分)1.软件缺陷产生的主要原因通常认为是()A、不断变化的软件需求B、文档不完善C、软件的复杂性D、工期短正确答案:A2.模块是组成软件结构的基本元素,它是( )的集合。

A、变量定义和功能实现B、数据说明和算法C、软件描述和实现D、变量和函数正确答案:B3.下列说法正确的是()A、测试不能依据测试人员的主管感受B、轻界面测试重功能测试C、任何时候测试必须依赖于用户的需求D、自己负责的功能模块不能交给别人进行测试正确答案:C4.程序指令执行过程中将逻辑地址转换成物理地址的过程称为( )。

A、线性重定位B、逻辑重定位C、静态重定位D、动态重定位正确答案:D5.软件工程中描述生存周期得瀑布模型一般包括计划、( )、设计、编码、测试、维护等几个阶段。

A、需求调查B、问题定义C、需求分析D、可行性分析正确答案:C6.ERP是下列哪类软件的缩写()A、人力资源管理系统B、企业资源规划系统C、决策支持系统D、管理信息系统正确答案:B7.降低缺陷费用最有效得方法就是()。

A、测试尽可能全面B、让用户进行测试C、尽可能早得开始测试D、测试尽可能深入正确答案:C8.在单链表中,每个节点有两个域:( )和指针域。

A、指令域B、代码域C、数据域D、结构域正确答案:C9.一般来说,ISP的网络中心都会有一台专门完成域名地址到IP地址转化的计算机,这台计算机称作( )。

A、WEB服务器B、域名服务器C、EMAIL服务器D、代理服务器正确答案:B10.密码验证的程序输入项不包括:( )。

A、密码B、用户名C、验证码D、权限正确答案:C11.软件产品发行时存在风险,通常风险为高、中、低三级,有损公司形象通常属于()A、高B、不算风险C、低D、中正确答案:A12.软件结构设计的基本的原则包括( )、抽象、信息隐蔽和局部化、模块独立。

A、可视化B、系统模块化C、图形化D、概念化正确答案:B13.下列关于改进软件测试过程的要点说法错误的是()A、在软件生命周期中测试人员尽早介入会造成缺陷转移B、测试工具的应用可以缩短部分测试周期,实现测试自动化C、测试过程的质量决定测试工作的成败D、改进测试过程是一个长期的过程正确答案:A14.著作权亦称( ),是指著作权人对其作品享有的专有权利。

软件测试基础练习题库(附参考答案)

软件测试基础练习题库(附参考答案)

软件测试基础练习题库(附参考答案)一、单选题(共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.通常可分为白盒测试和黑盒测试。

初级软件测试试题及答案

初级软件测试试题及答案

初级软件测试试题及答案一、单项选择题(每题2分,共20分)1. 软件测试的目的是()。

A. 证明软件是正确的B. 发现软件中的缺陷C. 证明软件是错误的D. 证明软件是完美的答案:B2. 黑盒测试不关心的是()。

A. 输入数据B. 输出结果C. 程序代码D. 程序流程答案:C3. 以下哪项不是软件测试的类型()。

A. 功能测试B. 性能测试C. 压力测试D. 代码测试答案:D4. 软件测试的基本原则不包括()。

A. 测试显示存在缺陷B. 穷尽测试是不可能的C. 早期测试D. 测试可以证明软件无缺陷答案:D5. 软件测试的目的是()。

A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的D. 证明软件是完美的答案:A6. 软件测试的目的是()。

A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的D. 证明软件是完美的答案:A7. 软件测试的目的是()。

A. 发现尽可能多的软件缺陷C. 证明软件是错误的D. 证明软件是完美的答案:A8. 软件测试的目的是()。

A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的D. 证明软件是完美的答案:A9. 软件测试的目的是()。

A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的答案:A10. 软件测试的目的是()。

A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的D. 证明软件是完美的答案:A二、多项选择题(每题3分,共15分)1. 软件测试的主要类型包括()。

A. 功能测试B. 性能测试C. 压力测试D. 兼容性测试E. 安全性测试答案:ABCDE2. 软件测试的基本原则包括()。

A. 测试显示存在缺陷B. 穷尽测试是不可能的C. 早期测试D. 缺陷集群E. 测试可以证明软件无缺陷答案:ABCD3. 软件测试的目的包括()。

A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的E. 评估软件的质量答案:AE4. 软件测试的目的是()。

软件测试复习题含答案

软件测试复习题含答案

一、选择题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~2倍 (B)10~20倍(C)50倍 (D)100倍或更高10、_____把黑盒子测试和白盒子测试的界限打乱了。

()(A) 灰盒子测试(B)动态测试(C)静态测试(D)失败测试11、软件测试的目的是________。

()(A)发现程序中的所有错误(B)尽可能多地发现程序中的错误(C)证明程序是正确的(D)调试程序12、下列_______不属于测试原则的内容()(A)软件测试是有风险的行为(B)完全测试程序是不可能的(C)测试无法显示潜伏的软件缺陷(D)找到的缺陷越多软件的缺陷就越少13、导致软件缺陷的最大原因是________。

《软件测试》期末复习试题及答案

《软件测试》期末复习试题及答案

《软件测试》期末复习试题及答案阶段测试一一. 单选题(共16题,65.6分)1. (单选题)(D )不是正确的软件测试目的。

A. 尽最大的可能找出最多的错误B. 设计一个好的测试用例对用户需求的覆盖度达到100%C. 对软件质量进行度量和评估,以提高软件的质量D. 发现开发所采用的软件过程的缺陷,进行软件过程改进2. (单选题)下面说法正确的是(C)。

A. 经过测试没有发现错误,说明程序正确B. 测试的目标是证明程序没有错误C. 成功的测试是发现了迄今尚未发现的错误的测试D. 成功的测试是没有发现错误的测试3. (单选题)下列选项中,不属于软件测试工程师职责范围的是(C)。

A. 测试方案设计B. 测试用例设计C. 进行代码调优D. 测试实施4. (单选题)下面属于软件测试模型的是(A)A. W模型B. 瀑布模型C. L模型D. G模型5. (单选题)下面关于软件测试模型的描述中,不正确的是(A)。

①V模型的软件测试策略既包括低层测试,又包括高层测试,高层测试是为了确保源码的正确性,低层测试是为了使整个系统满足用户的需求②V模型存在一定的局限性,它仅仅将测试过程作为在需求分析、概要设计、详细设计及编码之后的一个阶段③W模型可以说是V模型自然而然的发展,它强调:测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试④H模型中,软件测试是一个独立的流程,贯穿产品的整个生命周期,与其他流程并发地进行⑤H模型中,测试准备和测试实施紧密结合,有利于资源调配A. ①⑤B. ②④C. ③④6. (单选题)下列关于W模型的描述中正确的是(A)A. W模型强调测试伴随着整个软件开发周期,测试对象不仅仅是程序,需求、功能和文档同样需要测试B. 所有开发活动完成后,才可执行测试C. W模型将软件的开发视为合同签订、需求、设计、编码等一系列串行活动D. 在W模型中,需求、设计、编码串行进行,也可以并行工作7. (单选题)V模型描述了软件基本的开发过程和测试行为,描述了不同测试阶段与开发过程各段的对应关系。

软件测试题库及答案

软件测试题库及答案

软件测试题库及答案一、选择题1. 以下哪项不是软件测试的目的?A. 发现错误B. 验证功能C. 提高软件性能D. 确保软件质量答案:C2. 以下哪项不是软件测试的方法?A. 黑盒测试B. 白盒测试C. 静态测试D. 灰盒测试答案:D3. 以下哪个测试阶段通常在软件开发的后期进行?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:D4. 以下哪种测试用例设计方法是基于输入条件的?A. 等价类划分B. 边界值分析C. 因果图D. 场景测试答案:A二、填空题1. 软件测试的目的是________、________、________。

答案:发现错误、验证功能、确保软件质量2. 软件测试分为________、________、________和________四个阶段。

答案:单元测试、集成测试、系统测试、验收测试3. 黑盒测试主要关注软件的________,白盒测试主要关注软件的________。

答案:外部行为、内部逻辑4. 在测试用例设计过程中,________是测试用例设计的基础。

答案:测试需求三、判断题1. 软件测试是软件开发过程中的一个独立阶段。

()答案:正确2. 单元测试通常由开发人员完成。

()答案:正确3. 灰盒测试既关注软件的外部行为,也关注软件的内部逻辑。

()答案:正确4. 测试用例应该包含输入数据、预期结果和测试步骤。

()答案:正确四、简答题1. 简述软件测试的四个阶段及其作用。

答案:软件测试的四个阶段及其作用如下:(1)单元测试:对软件中的最小可测试单元进行检查,验证其功能是否正确。

(2)集成测试:将多个单元组合在一起,验证它们之间的接口是否正确。

(3)系统测试:对整个系统进行测试,验证系统的功能、性能、稳定性等。

(4)验收测试:在软件交付给客户前,对软件进行最终测试,确保其满足用户需求。

2. 简述等价类划分的测试用例设计方法。

答案:等价类划分是一种基于输入条件的测试用例设计方法。

软件测试技术复习题(含答案)

软件测试技术复习题(含答案)

注释:黄色表示重复或相似一、选择题1.软件测试的目的是(B )A.避免软件开发中出现的错误B.发现软件中出现的错误C.容忍软件中出现的错误D.修改软件中出现的错误2.对于逻辑表达式((a&b)| |c),需要(C )个测试用例才能完成条件组合覆盖。

A.2B.3C.4D.53.逻辑覆盖法不包括(C )。

A.分支覆盖B.语句覆盖C.需求覆盖D.修正条件判定覆盖4.如果某测试用例集实现了某软件的路径覆盖,那么它一定同事实现了该软件的(A )。

A.判定覆盖B.条件覆盖C.判定/条件覆盖D.组合覆盖5.使用白盒测试方法时,确定测试数据的依据是指定覆盖标准和(B )。

A.程序的注释B.程序的内部逻辑C.用户使用说明书D.程序的需求说明6.划分软件测试属于白盒测试还是黑盒测试的依据是(C )。

A.是否执行程序代码B.是否能看到软件设计文档C.是否能看到被测源程序D.运行结果是否确定7.单元测试中用来模拟被测模块调用者的模块是(C )A.父模块B.子模块C.驱动模块D.桩模块8.不属于单元测试内容的是(A )A.模块接口测试B.局部数据结构测试C.路经测试D.用户界面测试9.客户端交易处理性能指标是一类重要的负载压力测试指标,以下不属于客户端交易处理性能指标的是(C )A.负载测试B.压力测试C.疲劳强度测试D.大数据量测试10.以下不属于易用性而的是(D )A.功能易用性测试B.用户界面测试C.辅助功能测试D.可靠性测试11.软件测试的目的是(F )E.避免软件开发中出现的错误F.发现软件中出现的错误G.容忍软件中出现的错误H.修改软件中出现的错误12.软件的测试对象包括(D )。

A.软件代码B.文档C.数据D.以上全选13.对于逻辑表达式((a&b)| |c),需要(G )个测试用例才能完成条件组合覆盖。

E.2F.3G.4H.514.如果某测试用例集实现了某软件的路径覆盖,那么它一定同事实现了该软件的(E )。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件测试考试复习资料题型一、名词解释(30分,10个小题)二、简答题(30分,6个小题)三、论述题(40分,2个小题)重点内容1.软件测试的概念软件测试被定义为:“使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清楚预期结果与实际结果之间的差别。

”2.软件测试目的软件测试的目的是为了保证软件产品的最终质量,在软件开发的过程中,对软件产品进行质量控制。

测试可以达到很多目的,但最重要的是可以衡量正在开发的软件的质量。

3. 软件测试的原则(写4到5个即可)软件测试应力求遵循以下几条原则:(1)所有的测试都应追溯到用户需求(2)应尽早地和不断地进行软件测试。

(3)在有限的时间和资源下进行完全测试找出软件所有的错误和缺陷是不可能的,软件测试不能无限进行下去,应适时终止(4)测试只能证明软件存在错误而不能证明软件没有错误,测试无法显示潜在的错误和缺陷,继续进一步测试可能还会找到其他错误和缺陷。

(5)充分关注测试中的集群现象。

在测试的程序段中,若发现的错误数目多,则残存在其中的错误数目也比较多,因此应当花较多的时间和代价测试那些具有更多错误数目的程序模块。

(6)程序员应避免检查自己的程序。

考虑到人们的心理因素,自己揭露自己程序中的错误是件不愉快的事,自己不愿意否认自己的工作;另一方面,由于思维定势,自己难以发现自己的错误。

(7) 尽量避免测试的随意性。

软件测试是有组织、有计划、有步骤的活动,制订严格的测试计划,要严格按照测试计划进行,要避免测试的随意性。

并把测试时间安排得尽量宽松,不要希望在极短的时间内完成一个高水平的测试。

(8)设计测试用例时应该考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况下要制造极端状态和意外状态,比如网络异常中断、电源断电等情况。

(9)对测试错误结果一定要有一个确认的过程,一般由A测试出来的错误,一定要有一个B 来确认,严重的错误可以召开评审会进行讨论和分析。

(10)回归测试的关联性一定要引起充分的注意,修改一个错误而引起更多的错误出现的现象并不少见。

(11)妥善保存一切测试过程文档,意义是不言而喻的,测试的重现性往往要靠测试文档。

(12)为了发现更多的错误让系统更完善,设计测试用例时不但要选择合理的输入数据作为测试用例,而且要选择不合理的输入数据作为测试用例,使得系统能应付各种情况。

(13)测试过程不但要求软件开发人员参与,而且一般要求有专门的测试人员进行测试,并且还要求用户参与,特别是验收测试阶段,用户是主要的参与者。

α测试:是指软件开发公司组织内部人员模拟各类用户行为对即将面市软件产品(称为α版本)进行测试,试图发现错误并修正。

β测试:是指软件开发公司组织各方面的典型用户在日常工作中实际使用β版本,并要求用户报告异常情况、提出批评意见。

然后软件开发公司再对β版本进行改错和完善。

4. 软件测试的基本步骤软件测试是一个极为复杂的过程。

一个规范化的软件测试过程通常包括以下基本的测试过程:⏹拟订软件测试计划⏹编制软件测试大纲⏹确定软件测试环境⏹设计和生成测试用例⏹实施测试⏹生成软件测试报告5. 软件测试与调试的区别简单地说测试是为了发现问题,调试是解决问题。

具体来看,有如下区别:(1).测试的目的是找出存在的错误,尽可能地发现软件中隐藏的bug;而调试的目的是定位错误,找到软件的bug的确切位置,找出错误的原因并修改程序以修正错误。

测试活动中发现的缺陷需要通过调试来进行定位,两者在目标、方法和思路上有所不同。

(2).调试是编码阶段和缺陷修复阶段的活动,测试活动则可以贯穿整个软件的生命周期。

(3).测试是从已知的条件开始,使用预先定义的过程和步骤,有预知的结果,软件测试能确切地知道软件要去往何方;调试从未知的条件开始,结束时间无法预计,不知道软件是否真正地被修复。

(4).测试过程可以事先设计,可以预先制订测试用例和过程,工作进度可以度量。

调试过程无法描述过程和持续时间。

(5).测试过程是可重复的,调试的过程是随机的、不可重复的。

(6).测试的对象可以是文档和代码,而调试的对象只能是代码。

(7).调试是随机性的,由程序员自己完成,为了程序可运行;测试是有目的性的,由测试人员(非设计人员)完成,为了程序可完成指定功能。

6. 黑盒测试的概念黑盒测试(Black-box Testing)又称为功能测试或数据驱动测试,是把测试对象看做一个黑盒子。

利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。

(1).等价类划分法等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。

(2).边界值分析法(3).错误推测法(4).因果图方法(5)判定表驱动分析方法(6)正交实验设计方法(7)功能图分析方法和综合策略等。

8.黑盒测试的优缺点(1)黑盒测试的优点●对比较大的代码单元来说,黑盒测试比白盒测试效率要高。

●测试人员不需要了解实现的细节,包括特定的编程语言。

●测试人员和编码人员是彼此独立的;●从用户的视角进行测试,很容易被理解和接受。

●有助于暴露任何规格不一致或者有歧义的问题。

●测试用力可以在规格完成之后马上执行。

(2)黑盒测试的缺点●结果取决于测试用例的设计,测试用例的设计部分来源于经验。

●没有状态转换的概念,目前一些成功的例子还做不到针对被测试程序的状态转换。

●就没有状态概念的测试来说,寻找和确定造成程序停止的测试用例是很麻烦的事情,必须把周围可能的测试用例单独确认一遍。

而就有状态的测试来说,就更麻烦了,尤其不是一个单独的测试用例造成的问题。

●只有一小部分可能的输入被测试到,要测试每个可能的输入流几乎是不可能的。

●没有清晰的和简明的规格,测试用例是很难设计的。

●如果测试人员不被告知开发人员已经执行过的用例,在测试数据上会存在不必要的重复。

●会有很多程序路径没有被测试到。

●不能直接针对特定程序段测试,该程序段可能隐藏更多错误。

9.白盒测试的概念白盒测试把测试对象看做一个透明的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。

通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。

因此白盒测试又称为结构测试或逻辑驱动测试。

白盒测试的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。

其中逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。

11.白盒测试的优缺点(1). 优点●迫使测试人员去仔细思考软件的实现;●可以检测代码中的每条分支和路径;●揭示隐藏在代码中的错误;●对代码的测试比较彻底;●让软件最优化;●可构成测试数据使特定程序部分得到测试;●有一定的充分性度量手段;●可获得较多工具支持。

(2). 缺点●昂贵;●无法检测代码中遗漏的路径和数据敏感性错误;●不验证规格的正确性;●不易生成测试数据(通常) ;●无法对未实现规格说明的部分进行测试;●工作量大,通常只用于单元测试,有应用局限。

12.灰盒测试的概念灰盒测试,是介于白盒测试与黑盒测试之间的,可以这样理解,灰盒测试关注输出对于输入的正确性,同时也关注内部表现,结合了白盒测试和黑盒测试的要素,它考虑了用户端、特定的系统知识和操作环境。

它在系统组件的协同性环境中评价应用软件的设计。

13. 什么是单元测试单元测试也称为模块测试,是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。

通常而言,一个单元测试是用于判断某个特定条件或者场景下某个特定函数的行为。

14. 什么时候进行单元测试单元测试越早越好。

XP开发理论讲究测试驱动开发(即TDD),先编写测试代码,再进行开发。

从经验来看,先编写产品函数的框架,然后编写测试函数,针对产品函数的功能编写测试用例,然后编写产品函数的代码,每写一个功能点都运行测试,随时补充测试用例。

15.单元测试的优点(1)它是一种验证行为。

程序中的每一项功能都是测试来验证它的正确性。

它为以后的开发提供支缓。

就算是开发后期,我们也可以轻松的增加功能或更改程序结构,而不用担心这个过程中会破坏重要的东西。

而且它为代码的重构提供了保障。

这样,我们就可以更自由地对程序进行改进。

(2)它是一种设计行为。

编写单元测试将使我们从调用者角度来观察、思考。

特别是先写测试,迫使我们把程序设计成易于调用和可测试的,即迫使我们解除软件中的耦合。

(3)它是一种编写文档的行为。

单元测试是一种无价的文档,它是展示函数或类如何使用的最佳文档。

这份文档是可编译、可运行的,并且它保持最新,永远与代码同步。

(4)它具有回归性。

自动化的单元测试避免了代码出现回归的可能,编写完成之后,可以随时随地快速运行测试。

16. 何为集成测试集成测试也叫组装测试、联合测试,是单元测试的逻辑扩展。

它的最简单的形式是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口。

17. 集成测试常用方案选型集成测试的实施方案有很多种,如自底向上集成测试、自顶向下集成测试、核心集成测试、分层集成测试、基于使用的集成测试等(1)自底向上集成测试自底向上的集成(Bottom-Up Integration)方式是最常使用的方法自底向上集成测试的步骤大致如下:步骤一:按照概要设计规格说明,明确有哪些被测模块。

步骤二:在步骤一的基础上,按时间线序关系,将软件单元集成为模块,并测试在集成过程中出现的问题。

这里,可能需要测试人员开发一些驱动模块来驱动集成活动中形成的被测模块。

对于比较大的模块,可以先将其中的某几个软件单元集成为子模块,然后再集成为一个较大的模块。

步骤三:将各软件模块集成为子系统(或分系统)。

检测各自子系统是否能正常工作。

同样,可能需要测试人员开发少量的驱动模块来驱动被测子系统。

步骤四:将各子系统集成为最终用户系统,测试各分系统能否在最终用户系统中正常工作。

(2)核心系统先行集成测试核心系统先行集成测试法的思想是先对核心软件部件进行集成测试,在测试通过的基础上再按各外围软件部件的重要程度逐个集成到核心系统中。

其步骤如下:步骤一:对核心系统中的每个模块进行单独地、充分地测试,必要时使用驱动模块和桩模块。

步骤二:对于核心系统中的所有模块一次性集合到被测系统中,解决集成中出现的各类问题。

在核心系统规模相对较大的情况下,也可以按照自底向上的步骤,集成核心系统的各组成模块。

步骤三:按照各外围软件部件的重要程度以及模块间的相互制约关系,拟定外围软件部件集成到核心系统中的顺序方案。

方案经评审以后,即可进行外围软件部件的集成。

步骤四:在外围软件部件添加到核心系统以前,外围软件部件应先完成内部的模块级集成测试。

相关文档
最新文档