软件测试习题集及答案

合集下载

软件测试习题集与答案(详细版)

软件测试习题集与答案(详细版)

一、判断分析题1.软件测试的目的是尽可能多的找出软件的缺陷。

〔Y〕2.软件测试的目的是证明软件没有错误。

〔 N〕3.测试组负责软件质量。

(N )4.程序的效率与程序的复杂性相关。

(N )5. 软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。

(Y )6.测试程序仅仅按预期方式运行就行了。

(N )7.好的测试员不懈追求完美。

( Y)8.不存在质量很高但可靠性很差的产品。

(N )9.测试是为了验证该软件已正确地实现了用户的要求。

( N)10.发现错误多的程序模块,残留在模块中的错误也多。

(Y )11.程序效率的提高主要应通过选择高效的算法来实现。

( Y)12.测试人员要坚持原那么,缺陷未修复完坚决不予通过。

〔N〕13.工程立项前测试人员不需要提交任何工件。

〔Y〕14.缺陷跟踪系统只针对对测试人员来使用。

(N )15.从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可承受该产品。

(N )16.软件工程在进入需求分析阶段,测试人员应该开场介入其中。

( Y)17.测试是提高产品质量根本手段。

〔〕18.代码评审员一般由测试员担任。

〔N 〕19.代码评审是检查源代码是否到达模块设计的要求。

〔N〕20.软件测试员可以对产品说明书进展白盒测试。

(N )21.静态白盒测试可以找出遗漏之处的问题。

(Y )22.总是首先设计白盒测试用例。

(N)23.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。

(N)24.黑盒测试方法中最有效的是因果图法。

(Y )25.软件测试按照测试过程分类为黑盒、白盒测试。

(N)26.白盒测试又称构造测试、逻辑驱动测试或基于程序的测试。

〔Y〕27.白盒测试时一般由开发人员兼任测试人员的角色。

〔Y〕28.黑盒测试是从用户观点出发的测试。

〔 Y 〕29.白盒测试是从用户观点出发的测试。

〔 N〕30.白盒测试根据程序外部特征进展测试,黑盒测试根据程序内部逻辑构造进展测试。

软件测试复习题(附答案)

软件测试复习题(附答案)

软件测试复习题(附答案)一、单选题(共100题,每题1分,共100分)1.( )的优点是:对控制流程描述直观,便于初学者掌握。

A、盒图B、程序流程图C、PAD图D、判定表正确答案:B2.软件项目可行性分析的研究内容包括:技术可行性、经济可行性、运行可行性以及( )等。

A、环境可行性B、人员可行性C、法律可行性D、时间可行性正确答案:C3.( )是结构化系统分析的基本工具。

A、程序流程图B、对话图C、数据流图D、状态转化图正确答案:C4.在VC中,如果在Menu Item属性页中选择( )复选框,表示此菜单项是一个多级菜单,并且其右边将会出现一个新菜单框。

A、CheckedB、inactiveC、Pop-upD、Grayed正确答案:C5.( )是网络的核心,它的主要任务是为网络上的其它机器提供服务。

A、客户机B、服务器C、网络协议D、工作站正确答案:B6.虚拟机好似通用的计算机,有自己的指令系统,但本身没有( )。

A、翻译指令B、操作系统C、实际的硬件D、翻译程序正确答案:C7.所有的( )必须与业务需求一致。

A、用户需求B、系统需求C、产品需求D、功能需求正确答案:A8.软件测试是软件质量保证的重要手段()是软件测试的最基础环节A、单元测试B、验收测试C、确认测试D、系统测试正确答案:A9.( )也称为分支覆盖,是一种较强的逻辑覆盖。

A、路径覆盖B、判定覆盖C、条件组合覆盖D、条件覆盖正确答案:B10.下列有关测试说法中,正确的是()A、测试组的测试工作是在编码阶段开始的B、静态测试是不运行被测程序本身,而寻找程序代码中可能存在的错误或评估程序代码的过程C、所有的测试都适合引入测试工具辅助进行测试D、只要进行有效的测试,就能获得高质量的软件产品正确答案:B11.( )除提供身份证明外,还可指出所签的文档是否已被修改。

A、公开密钥B、传统签名C、私有密钥D、数字签名正确答案:D12.以下不用于单机版系统测试的是()。

软件测试题大全及答案

软件测试题大全及答案

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

软件评测考试题库及答案

软件评测考试题库及答案

软件评测考试题库及答案一、选择题1. 软件评测的主要目的是:A. 提高软件的知名度B. 确保软件质量C. 降低软件开发成本D. 增加软件的功能答案:B2. 软件评测不包括以下哪项活动?A. 黑盒测试B. 白盒测试C. 灰盒测试D. 软件维护答案:D3. 以下哪个是软件评测的类型?A. 性能评测B. 安全性评测C. 可用性评测D. 所有选项都是答案:D4. 软件评测中的黑盒测试主要关注:A. 代码的内部逻辑B. 软件的输入输出行为C. 软件的界面设计D. 软件的数据库结构答案:B5. 软件评测中的白盒测试主要关注:A. 代码的内部逻辑B. 软件的输入输出行为C. 软件的界面设计D. 软件的数据库结构答案:A二、判断题1. 软件评测应该在软件开发的任何阶段都可以进行。

(错误)2. 软件评测可以完全替代用户测试。

(错误)3. 软件评测可以帮助开发者发现并修复软件中的缺陷。

(正确)4. 软件评测的结果不会影响到软件的交付和发布。

(错误)5. 软件评测只关注软件的功能实现,不关注用户体验。

(错误)三、简答题1. 简述软件评测的重要性。

软件评测是确保软件质量的关键环节。

它可以帮助开发者发现软件中的错误和缺陷,提高软件的稳定性和可靠性。

此外,软件评测还可以验证软件是否满足用户的需求和预期,从而提升用户体验。

2. 描述软件评测的一般流程。

软件评测的一般流程包括:需求分析、测试计划制定、测试用例设计、测试执行、缺陷报告、缺陷修复和回归测试。

这个过程可能需要多次迭代,直到软件达到预期的质量标准。

四、案例分析题假设你是一名软件评测工程师,你被分配到一个新项目中。

请描述你将如何进行软件评测。

1. 首先,我会与项目团队沟通,了解软件的需求和功能,确保我对软件有充分的理解。

2. 然后,我会制定详细的测试计划,包括测试的范围、方法、资源和时间表。

3. 接下来,我会设计测试用例,覆盖软件的所有功能点和可能的使用场景。

4. 执行测试用例,记录测试结果和发现的缺陷。

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

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

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

软件测试习题集附详细答案.docx

软件测试习题集附详细答案.docx

—、基本概念软件测试的基本任务动态测试与静态测试驱动模块与桩模块程序的三种基本控制结构程序效率软件软件工程软件生存周期非入侵式工具与入侵式工具二、判断题( )1.语句构造的原则是简单直接,不能因为追求效率而使代码复杂化( )2.文档是软件产品的一部分,没有文档的软件就不称其为软件。

( )3.好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。

( )4.边界值分析方法是取输入/输出等价类的边界值作为测试用例。

( )5,在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。

( )6.好的测试用例应能证明软件是正确的。

( )7.白盒测试仅与程序的内部结构有关,可以不考虑程序的功能要求。

( )8.当软件开发项目的进度有可能拖延时,增加开发人员并不能加快进度。

( )9,不完善的系统定义往往是导致软件项目失败的主要原因。

( )10. 一个成功的项目唯一提交的就是运行程序。

( )11. 一个好的测试用例在于能发现至今未发现的错误。

( )12.软件工程的考虑范围主要是程序设计和实现。

( )13.等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。

)14.在结构化程序设计中,应尽量采用复合的条件测试,以避免嵌套的分支结构)15. GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。

( )16,发现错误多的程序模块,残留在模块中的错误也多。

( )17.程序效率的提高主要应通过选择高效的算法来实现。

( )18.模块化程序设计中,在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数。

( )19.作为一个好的程序,不仅处理速度要快,而且易读易修改等等也都是重要的条件。

( )20.为了快速完成集成测试,采用一次性集成方式是适宜的。

( )21.自底向上集成需要测试员编写驱动程序。

()( )22.拥有一套讲述如何开发软件的书籍,书中充满了标准与示例,可以帮助解决软件开发中遇到的任何问题。

软件测试笔试题及答案

软件测试笔试题及答案

软件测试笔试题及答案一、选择题1. 下列哪项不属于软件测试的目标?a) 发现软件中的缺陷b) 验证软件是否满足需求c) 确保软件具有高性能d) 提高软件的可靠性答案:c) 确保软件具有高性能2. 在测试活动中,以下哪个过程通常位于最后?a) 单元测试b) 验收测试c) 回归测试d) 静态测试答案:b) 验收测试3. 在软件测试中,猴子测试是指什么?a) 随机输入测试b) 随机点击测试c) 随机操作测试d) 随机接口测试答案:a) 随机输入测试4. 以下哪个是黑盒测试技术?a) 语句覆盖测试b) 边界值分析测试c) 静态代码分析d) 回归测试答案:b) 边界值分析测试5. 在软件测试中,白盒测试是指什么?a) 只测试软件的外部功能b) 只测试软件的内部逻辑c) 组合黑盒和白盒测试的方法d) 只测试软件的用户界面答案:b) 只测试软件的内部逻辑二、填空题1. 简述软件测试的目标。

答案:软件测试的目标是发现软件中的缺陷、验证软件是否满足需求、提高软件的可靠性。

2. 请简要说明单元测试的作用。

答案:单元测试主要是测试软件中的最小单元模块,以确认每个模块都能正常运行且满足预期。

它有助于提早发现和修复代码错误,避免错误在整个系统中扩散。

3. 请解释回归测试的含义。

答案:回归测试是指在软件发生变化后,重新执行旧的测试用例,以确保修改不会影响原有的功能和系统稳定性。

它有助于保证系统在修改后仍能正常工作,不引入新的问题。

三、解答题1. 请简要介绍一下常用的软件测试方法。

答案:常用的软件测试方法包括黑盒测试和白盒测试。

黑盒测试主要关注软件的外部功能,不考虑内部逻辑,通过输入合法和非法数据来测试软件的响应和输出是否符合预期。

而白盒测试则关注软件的内部逻辑,通过检查代码覆盖率和执行路径来验证软件的正确性。

2. 简要描述一下软件测试生命周期中的各个阶段。

答案:软件测试生命周期包括需求分析、测试计划、测试设计、测试执行和测试评估。

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

1.什么是软件测试?软件测试的目的和作用是什么?答:软件测试是在受控制的条件下对系统或应用程序进行操作并评价操作的结果。

软件测试的目的是以最少的时间和人力,系统地找出软件中潜在的各种错误和缺陷。

测试是为了证明程序有错,而不是证明程序无错。

一个成功的测试是发现了至今未发现的错误的测试。

软件测试的原则包括:所有的测试都应追溯到用户的需求;尽早地和不断地进行软件测试;不可能完全的测试,因为输入量太大,执行路径太多;注意测试中的群集现象;避免测试自己的程序;设计周密的测试用例。

2.软件缺陷产生的原因?答:A.软件需求说明书编写的不全面,不完整,不准确,而且经常更改B.软件设计说明书C.软件操作人员的水平D.开发人员不能很好的理解需求明书和沟通不足3.软件测试的意义?意义:1.对产品质量完成全面的评估,为软件产品发布(如验收测试)、软件系统部署(如性能规划测试)、软件产品鉴定(第三方独立测试)委托方和被委托方纠纷仲裁(第三方独立测试)和其它决策提供信息;2.通过持续的测试(包括需求评审、设计评审、代码评审等)可以对产品质量提供持续的、快速的反馈,从而在整个开发过程中不断地、及时地改进产品的质量,并减少各种返工,降低软件开发的成本;3.通过测试发现所要交付产品的缺陷,特别是尽可能地发现各种严重的缺陷,降低或消除产品质量风险,提高客户的满意度,扩大市场份额,提高客户的忠诚度。

4.通过对缺陷进行分析,找出缺陷发生的根本原因(软件过程中的问题,包括错误的行为方式)或总结出软件产品的缺陷模式,避免将来犯同样的错误或产生类似的产品问题,达到缺陷预防的目的4.软件测试与软件开发的关系?答:软件开发是一个系统的工程。

包括需求分析,设计,编码,测试,维护等等几个环节。

测试是整个软件开发流程中的一个环节。

5.简述软件测试过程v模型和w模型的主要区别:V模型是软件开发完了之后才开始测试活动。

而W模型则是软件测试活动伴随着软件开发活动。

和软件开发同时开展。

W模型更加敏捷,对于软件的交付期和品质的保证能力更强。

6.测试计划的目的是什么?答:软件测试计划是指导测试过程的纲领性文件,包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。

借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。

7.什么是黑盒测试?黑盒测试主要采用的技术有哪些?答:黑盒测试又称为功能测试、数据驱动测试和基于规格说明的测试。

它从用户观点出发的测试。

用这种方法进行测试时,把被测试程序当作一个黑盒,在不考虑程序内部结构的内部特性、测试者只知道该程序输入和输出之间的关系或程序功能的情况下,依靠能够反映这一关系和程序功能需求规格的说明书,来确定测试用例和推断测试结果的正确性。

黑盒测试的方法包括:边界值分析、等价类测试、基于决策表的测试和因果图等。

8.简单描述黑盒测试各种方法的特点。

答:黑盒测试的方法主要有边界值分析法、等价类划分法、因果图法、决策表测试法等。

边界值分析利用输入变量的最小值、略大于最小值、输入值域内的任意值、略小于最大值和最大值来设计测试用例。

等价类划分法是把程序的输入域划分为若干部分,然后从每个部分中选取少数代表性数据当作测试用例。

经过类别的划分后,每一类的代表性数据在测试中的作用都等价于这一类中的其他值。

因果图方法就是从程序规格说明书的描述中找出因(输入条件)和果(输出结果),将因果图转换为决策表,最后为决策表中的每一列设计一个测试用例。

这种方法考虑到了输入情况各种组合以及各个输入情况之间的相互制约关系。

在所有的黑盒测试方法中,基于决策表的测试是最为严格、最具有逻辑性的。

在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。

决策表法很适合测试这类问题。

9.如果能够执行完美的黑盒测试,还需要进行白盒测试吗?为什么?答:需要,黑盒测试可根据程序规格检验程序是否完成规定功能,但无法发现程序内部的编码和逻辑错误,白盒测试与之相反互补。

10.边界值测试有几种方法?答:边界值分析和健壮性测试11.等价分类法的测试技术采用的一般方法?举例说明?答:(1)为每个等价类编号;(2)设计一个新的测试方案,以尽可能多的覆盖尚未被覆盖的有效等价类,重复这一步骤,直到所有有效等价类被覆盖为止。

(3)设计一个新的测试方案,使它覆盖一个尚未被覆盖的无效等价类, 重复这一步骤,直到所有无效等价类被覆盖为止。

12.什么是等价类?如何划分等价类?等价类测试中有哪些方法?答:把单元的输入域化分为几种数据类,每种用来发现一类的错误,每类只用提供一个或几个用例数据。

目的是减少用例数量。

13.请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。

答:黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。

白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。

软件的黑盒测试意味着测试要在软件的接口处进行。

这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。

因此黑盒测试又叫功能测试或数据驱动测试。

黑盒测试主要是为了发现以下几类错误:1、是否有不正确或遗漏的功能?2、在接口上,输入是否能正确的接受?能否输出正确的结果?3、是否有数据结构错误或外部信息(例如数据文件)访问错误?4、性能上是否能够满足要求?5、是否有初始化或终止性错误?软件的白盒测试是对软件的过程性细节做细致的检查。

这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。

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

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

白盒测试主要是想对程序模块进行如下检查:1、对程序模块的所有独立的执行路径至少测试一遍。

2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。

3、在循环的边界和运行的界限内执行循环体。

4、测试内部数据结构的有效性,等等。

单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。

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

单元测试是由程序员自己来完成,最终受益的也是程序员自己。

可以这么说,程序员有责任编写功能代码,同时也就有责任为自己的代码编写单元测试。

执行单元测试,就是为了证明这段代码的行为和我们期望的一致。

集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展。

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

从这一层意义上讲,组件是指多个单元的集成聚合。

在现实方案中,许多单元组合成组件,而这些组件又聚合成程序的更大部分。

方法是测试片段的组合,并最终扩展进程,将您的模块与其他组的模块一起测试。

最后,将构成进程的所有模块一起测试。

系统测试是将经过测试的子系统装配成一个完整系统来测试。

它是检验系统是否确实能提供系统方案说明书中指定功能的有效方法。

(常见的联调测试)系统测试的目的是对最终软件系统进行全面的测试,确保最终软件系统满足产品需求并且遵循系统设计。

验收测试是部署软件之前的最后一个测试操作。

验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。

验收测试是向未来的用户表明系统能够像预定要求那样工作。

经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是验收测试的任务,即软件的功能和性能如同用户所合理期待的那样。

第三章14.什么是白盒测试?白盒测试主要采用的技术有哪些? 白盒测试有那几种方法?并简单描述各种方法的特点。

答:白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试。

它依赖于对程序细节的严密的检验。

针对特定条件和循环集设计测试用例,对软件的逻辑路径进行测试。

在程序的不同点检验程序的状态,来进行判定其实际情况是否和预期的状态相一致。

白盒测试包括:逻辑覆盖、基路径测试、数据流测试、程序插装等。

总体上分为静态方法和动态方法两大类静态:关键功能是检查软件的表示和描述是否一致,没有冲突或者没有歧义动态:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。

15.常用的逻辑覆盖测试方法有哪几种?并简单描述各种方法的目的。

答:逻辑覆盖可分为:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖及路径覆盖。

语句覆盖:要求设计若干个测试用例,运行被测程序,使程序中的每个可执行语句至少被执行一次。

判定覆盖:要求设计若干测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少执行一次,即判断的真假值均要被检测。

判定覆盖又称为分支覆盖。

条件覆盖:要求设计若干测试用例,执行被测程序,使得程序中每个判断的每个条件的可能取值至少被执行一次。

判定/条件覆盖:要求设计足够的测试用例,执行被测程序,使得判断中每个条件的所有可能取值至少被执行一次,同时每个判断的所有可能判断结果也至少被执行一次。

路径覆盖:要求设计足够多测试用例,覆盖程序中所有可能的路径。

16.逻辑覆盖中几种主要覆盖的含义?举例说明?答:逻辑覆盖是一种使用最广泛的结构测试方法。

逻辑覆盖以程序内部的逻辑结构为基础设计测试用例,要求对被测程序的逻辑结构有清楚的了解,甚至要能掌握源程序的所有细节。

由于覆盖测试的目标不同,逻辑覆盖可分为:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖及路径覆盖。

第五章17.单元测试有那些步骤,各个步骤有那些实施内容。

答:1.静态检查:用工具Logiscope或者人工检查单2.动态检查:用工具PurifyPlus或者人工调试3.测试用例执行(工具或人工)设计测试用例及数据;(提前)编写测试用例代码、脚本、驱动模块和桩模块;(提前)运行测试用例,记录结果。

(在步骤1,2之后进行)18.非增量式测试与增量式测试答:非增量式测试的方法是先分散测试,然后集中起来再一次完成集成测试。

假如在模块的接口处存在错误,只会在最后的集成测试时一下子暴露出来。

增量式测试是逐步集成和逐步测试的方法,把可能出现的差错分散暴露出来,便于找出问题和修改。

而且一些模块在逐步集成的测试中,得到了较多次的考验,因此,可能会取得较好的测试效果。

结论:增量式测试要比非增量式测试具有一定的优越性。

相关文档
最新文档