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

软件测试复习题(附答案)一、单选题(共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 .软件测试的目的是尽可能多的找出软件的缺陷。
(Y )2 .Beta 测试是验收测试的一种。
(Y )3 .验收测试是由最终用户来实施的。
(N )4 .项目立项前测试人员不需要提交任何工件。
(Y )5 .单元测试能发现约80% 的软件缺陷。
(Y )6 .代码评审是检查源代码是否达到模块设计的要求。
(N )7 .自底向上集成需要测试员编写驱动程序。
(Y )8 .负载测试是验证要检验的系统的能力最高能达到什么程度。
(N )9 .测试人员要坚持原则,缺陷未修复完坚决不予通过。
(N )10 .代码评审员一般由测试员担任。
(N )11 .我们可以人为的使得软件不存在配置问题。
(N )12 .集成测试计划在需求分析阶段末提交。
(N )13. 软件需求是度量软件质量的基础。
不符合需求的软件就不具备质量。
(T)14. 全面质量管理的定义是:一个组织以质量为中心,以全员参与为基础,目的在于通过让顾客满意和本组织所有成员及社会受益而达到长期成功的管理途径。
(T)15. 发现错误是软件测试的唯一目的。
(F)16. 白盒测试可以找出软件遗漏功能和代码错误问题。
( F)17.软件的质量有测试组决定。
( F)18.在设计测试用例时,应包括合理的输入条件和不合理的输入条件。
( T)19. 测试从不可知内部条件开始,结果是不可预见的。
(F)20. 软件缺陷一定是由编码所引起的. 。
(F)21. 软件测试等于程序测试。
(F)22. Beta测试是软件的多个用户在实际使用环境下进行的测试。
(T)23.经验表明测试后程序残存的错误数目与该程序中以发现的错误数目或检错率成正比(T) 24.验收测试比较适合采用软件自动化测试工具进行测试。
(F)1 软件测试的核心是(A)A、测试用例B、测试人员C、编程人员D、测试方法2、为了提高测试的效率,应该(D )。
A 随机地选取测试数据B 取一切可能的输入数据作为测试数据C 在完成编码以后制定软件的测试计划D 选择发现错误的可能性大的数据作为测试数据3、软件的集成测试工作最好由(D )承担,以提高集成测试的效果。
软件测试复习题含答案

一、选择题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、导致软件缺陷的最大原因是________。
软件测试复习题汇总

软件测试总复习题一、单选1.对程序中已发现的错误进行错误定位和确定出错性质,并改正这些错误,同时修改相关的文档,称为(B)A)测试B)调试 C)错误分析D)验证2.数据流覆盖关注的是程序中某个变量从其声明、赋值到引用的变化情况,它是下列哪一种覆盖的变种(A)A)语句覆盖B)控制覆盖C)分支覆盖D)路径覆盖3.程序的流程图如下图所示,采用路径覆盖法进行测试,则至少需要几个测试用例可以覆盖所有可能的路径(C)A)5 B)6 C)7 D)84.如果一个判定中的复合条件表达式为(A > 1)or(B <= 3),则为了达到100%的条件覆盖率,至少需要设计多少个测试用例(B)A)1 B)2 C)3 D)45.自底向上单元测试的策略是首先对模块调用图上的哪一层模块进行测试(A)A)最底层B)下一层 C)最高层 D)上一层6.基本路径测试满足( B)A)语句覆盖B)路径覆盖 C)分支覆盖 D)条件覆盖7.集成测试对系统内部的交互以及集成后系统功能检验了何种质量特性(B)A)正确性B)可靠性 C)可使用性 D)可维护性8.在软件性能测试中,下列指标中哪个不是软件性能的指标( D )A)响应时间B)吞吐量 C)资源利用率 D)并发进程数9.下列关于软件性能测试的说法中,正确的是(B)A)性能测试的目的不是为了发现软件缺陷B)压力测试与负载测试的目的都是为了探测软件在满足预定性能需求的情况下所能负担的最大压力C)性能测试通常要对测试结果进行分析才能获得测试结论D)在性能下降曲线上,最大建议用户数通常处于性能轻微下降区与性能急剧下降区的交界处10.下列关于软件可靠性测试的说法中,错误的是( A)A)发现软件缺陷是软件可靠性测试的主要目的B)软件可靠性测试通常用于有可靠性要求的软件C)在一次软件可靠性测试中,执行的测试用例必须完全符合所定义的软件运行剖面D)可靠性测试通常要对测试结果进行分析才能获得测试结论11.下列关于面向对象软件测试的说法中,正确的是(A)A)在测试一个类时,只要对该类的每个成员方法都进行充分的测试就完成了对该类充分的测试B)在存在多态的情况下,为了达到较高的测试充分性,应对所有可能的绑定都进行测试C)假设类B是类A的子类,如果类A已进行了充分的测试,在测试类B时不必测试任何类B继承类A的成员方法D)对于一棵继承树上的多个类,只有处于叶节点的类需要测试12.下列哪种测试不属于面向对象单元测试考虑的范畴(D)A)成员方法的测试B)类的测试C)类树的测试D)多个相互协作的类树的测试13.下列关于面向对象集成测试的说法中,正确的是(B)A)大突击集成是面向对象集成测试最常用且最有效的方法B)自底向上集成和自顶向下集成都需要为集成测试开发大量代码C)协作集成在任何情况下都优于自底向上集成和自顶向下集成D)高频集成是以自底向上集成为基础,利用冒烟测试进行的集成测试14.下列有关测试过程V模型的说法中,正确的是(C)A)验收测试应确定程序的执行是否满足软件设计的要求B)系统测试应确定系统功能和性能的质量特性是否达到系统要求的指标C)单元测试和集成测试应确定软件的实现是否满足用户需要或合同的要求D)集成测试在编码结束前就可以开始15.计算机软件测试规范规定,软件测试的类别可分为:单元测试、集成测试以及(C)A)系统测试B)验收测试C)系统测试和验收测试D)配置项测试、系统测试和验收测试16.经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现并改正的错误数目较多,则该模块中残存的错误数目与其他模块相比,通常应该(D)A)较少B)较多C)相似D)不确定17.同行评审,有时称为同级评审,是一种通过作者的同行来确认缺陷和需要变更区域的检查方法。
软件测试复习题

名词解释题1.软件生命周期从软件项目提出直至不再使用、需要重新开发的生命周期。
包括需求、概要设计、详细设计、代码实现、软件测试、维护等阶段。
2.软件质量软件质量就是指软件系统或系统中的软件部分的质量,即满足用户需求,包括功能需求和性能需求的程度。
3.软件测试软件测试是一种作为主体的人通过各种手段对客体软件的某种固有属性进行的一种以认知,和改造为目的的活动4.软件错误也称故障,导致失效的原因,或者程序内部的一个错误。
5.软件缺陷在程序中存在的,有可能诱发软件故障或导致软件失效的潜在因素。
6.动态测试动态测试是在抽样测试数据上执行程序并分析输出以及发现错误的过程。
包括白盒测试技术和黑盒测试技术7.静态测试静态测试是不执行程序代码而寻找文档、程序代码中可能存在的错误的过程。
8.黑盒测试黑盒测试也称功能测试或数据驱动测试,前提是已知产品所具有的功能,通过测试来检测每个功能是否都正常使用。
黑盒测试法常用的技术包括:功能分解法、等价类划分法、边界值解析法、因果图法、随机测试、猜错法等。
9.白盒测试白盒测试是吧测试对象看做一个打开的盒子。
利用白盒测试法进行动态测试时,除了要验证软件的功能特性之外,还特别需要测试软件产品内部结构和处理过程。
白盒测试法的覆盖标准由逻辑覆盖测试、基本路径测试和循环结构覆盖测试。
10.单元测试单元测试的对象是程序系统中的最小单元---模块。
单元测试的依据是详细设喵叔,单元测试应对模块内所有重要的控制路径测试测试用例,以便发现模块内部的错误。
单元测试多采用白盒测试技术,对系统内多个模块可以进行并行测试。
11.集成测试集成测试,也称组装测试、联合测试、子系统测试,在单元测试的基础上,将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的模块之间问题。
两种集成方式:一次性集成方式和增殖式集成方式。
12.系统测试系统测试是将软件放在整个计算机环境下,包括软硬件平台、某些支持软件、数据和人员等,在实际运行环境下进行一系列的测试,包括恢复测试、安全测试、强度测试和性能测试等。
《软件测试》期末复习试题及答案

《软件测试》期末复习试题及答案阶段测试一一. 单选题(共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模型描述了软件基本的开发过程和测试行为,描述了不同测试阶段与开发过程各段的对应关系。
软件测试期末考试复习题(学生版)

• A.阶段2:分析需求阶段• B.阶段3:实现需求阶段• C.阶段1:定义需求阶段• D.阶段4:校验需求阶段• A.一个执行排序功能的函数• B.一个类• C.类中的一个功能方法• D.类中的Getter方法• A.对于有效等价类可以不设计测试用例• B.利用无效等价类设计的测试用例,可以检验程序中功能和性能是否不符合需求说明书的规定• C.利用有效等价类设计的测试用例,可以检验程序是否实现了需求说明书中规定的功能和性能• D.对同一个程序可能会划分出多种不同的等价类A• A.在程序员眼中,实施单元测试意味着减少工作量,因为测试脚本是测试人员负责编写的• B.在程序员眼中,实施单元测试意味着可以随意编码了• C.对于领导者来说,要实施单元测试也要控制成本• D.对于领导者来说,要实施单元测试就必须牺牲开发进度• A.由输入+实际输出+测试环境构成• B.反映系统实际执行结果• C.描述用户预期输出• D.能代表需求的小的测试单元得分/总分• A.• B.• C.• D.观察下图的结构,该函数的结构复杂度高吗?得分/总分• A.有点高,但可以接受• B.不高,完全可以接受• C.不好说• D.高,应尽量降低复杂度• A.①②④• B.①②③• C.①②③④• D.②③④• A.分别输入1、50、100条记录• B.分别输入0、1、50、99、100条记录• C.分别输入0、1、99、100、101条记录• D.分别输入0、1、50、99、100、101条记录• A.可以• B.如果作者不是开发人员,则可以,否则不行• C.不可以• D.如果作者是开发经理,则可以,否则不行• A.判定覆盖• B.条件覆盖• C.语句覆盖• D.条件组合覆盖• A.多出口节点对程序带来的风险• B.数据变量关联性对程序带来的风险• C.串行语句规模对程序带来的风险• D.条件判定节点引入的多分支对程序带来的风险• A.打开-修正-关闭-修正-修正-关闭-打开• B.新提交-打开-打开-修正-关闭-修正-重新打• C.新提交-打开-打开-关闭-修正-关闭-重新打开• D.新提交-打开-打开-修正-修正-关闭-重新打开在如下的控制流图中有多少个判定节点?得分/总分• A.18• B.19• C.17• D.20• A.Parameterized• B.以上都不对• C. Categories• D.Suite在这两个关于缺陷到达率模式的图中,关于其质量级别的正确描述是:得分/总分• A.二者的开发质量相同• B.左图表示的开发质量优于右图• C.仅从这两个图无法看出二者开发质量的差别• D.右图表示的开发质量优于左图• A.程序代码的圈复杂度低于10• B.程序中存在循环• C.程序只有一个入口节点和一个出口节点• D.所有路径的数量不超过6条• A. JUnit5可提供对JUnit3和JUnit4版本的脚本兼容• B.在JUnit3.x版本中,所有测试类必须继承TestCase类• C.在JUnit4.x版本中,被Test注解的方法会在执行测试中被框架自动发现和执行• D.在JUnit4.x版本中,使用Before所注解的方法在某测试类中所有测试方法执行之前执行一次• A.选择扫描登录时,二维码显示不出来• B.选择账户登录,输入账户、密码后,自动选中【记住我】• C.选择手机号登录,输入手机号,点击【获取验证码】,在10分钟内无法收到验证码短信• D.选择手机号登录,输入手机号,输入密码时,密码显示为用户输入的原始符号• A.单元测试完全采用白盒测试方法完成• B.单元测试往往需要编写桩模块和驱动模块• C.单元测试包括动态测试和静态测试• D.单元测试也需要进行计划、设计、执行、评审等一系列过程• A.不会,程序猿会回复无法重现,将缺陷报告直接驳回• B.不会,程序猿会直接将缺陷关闭• C.会,程序猿会设法重现该缺陷并修复• D.会,程序猿会找测试人员确认,并设法重现该缺陷,然后修复• A.无法穷尽• B.1000• C.1728• D.30• A.一个模块的功能是否会对另一个模块的功能产生不利影响• B.输入的实际参数与形式参数的个数不相同• C.提示的错误与实际的错误不相符• D.变量的初始值或缺省值有错误• A.测试数据应与测试用例关联• B.测试用例应保持独立• C.测试结果应尽量由脚本自动校验• D.测试代码应与产品代码放在一起• A.限制参与者人数,并要求评审会之前做好准备• B.对评审中出现的问题要充分讨论,以求彻底解决• C.要有严格的评审计划,并遵守日程安排• D.评审产品,而不是评审生产者的能力• A.选择多种指标,对测试展开全面评估• B.根据需求,采用各种方法进行测试设计• C.对测试进行详尽且周全的计划• D.完全依托测试工具,自动、快速地执行软件测试• A.性能测试设计的关键是使用测试工具• B.性能测试中,可利用脚本参数化实现让多个虚拟用户使用几个不同的实际发生数据来执行同一脚本的目的• C.不借助测试工具几乎无法展开性能测试• D.性能测试中常见的系统指标包括:平均响应时间、每秒事务数、每秒点击数、吞吐量等• A.可用性可以看做是产品竞争力的核心• B.可靠性是产品修改中体现出来的质量• C.McCall质量模型的顶层是软件的内在特性• D.McCall质量模型是通过构建质量属性之间的关系,分析质量属性来构建质量模型• A.优选组合测试方法• B.优选边界值测试方法• C.优选场景法• D.优选正交法• A.只要一个新的功能点开发完成,就立刻开发对应的功能测试脚本• B.录制脚本时不要提前识别被测系统中的对• C.确保测试脚本相互独立,以避免不同脚本之间的影响• D.录制业务流程尽量长的测试脚本• A.JMeter是基于JAVA的压力测试工具• B.PerformanceRunner是用于性能测试的工具• C.TestCenter是用于测试管理的工具• D. JUnit是基于Java的单元测试工具• A.软件具有所期望的各种属性的组合程度• B.确定软件在使用中将满足顾客预期要求的程度• C.软件产品中能满足给定需要的性质和特性的总体• D.顾客和用户觉得软件满足其综合期望的程度得分/总分• A.(2, 30, 1)• B.(-30, 20, 30)• C. (-8, 20, 3)• D.(-19, 0, 29)• A.被分析的特性或功能点复杂,输入项目很多的情况下• B.系统输入之间基本没有相互联系• C.系统输入之间相互约束多,需要做大范围的组合测试情况下• D.输入输出明确,且输入输出存在明确的因果关系• A.系统测试• B.单元测试• C.桌面检查• D.基于CA工具的代码审查得分/总分• A.使用断言校验执行结果• B.在被测类的main函数中编写测试脚本• C.在一个测试方法中执行多个测试用例• D.在同一个测试类中,所有测试方法共用一个被测类的对象• A.对缺陷进行分类,确定需要优先解决的缺陷,可以减少缺陷报告的处理成本• B.风险和成本是某些程序缺陷不被修复的常见理由• C.在新的软件版本中,要关注那些被推迟修复的缺陷• D.严重程度高的缺陷必须优先解决• A.可重用性• B.可维护性• C.可移植性• D.可读性• A.软件测试是提高软件质量的一种手段• B.软件质量是由软件测试保证的• C.软件质量是在软件过程中逐步建立起来的• D.软件过程包括软件测试• A.安全测试• B.强度测试• C.易用性测试• D.负载测试A、B、C、D。
软件测试技术复习题(含答案)

注释:黄色表示重复或相似一、选择题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、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4. 简述按照测试对象划分的软件测试分类
5.
1. 单元测试 2. 不见测试 3. 系统测试 4. 代码审查 5. 文档审查
6.
6. 简述软件测试的阶段划分 分为初期阶段、发展阶段和成熟阶段三个阶段。 初期阶段1957~1971:测试通常被认为是对产品进行事后检验,缺 乏有效的测试方法。 发展阶段1972~1982:1972年第一次关于软件测试的正式会议,促进 软件测试的发展。
码进行检查并修改其中的缺陷。 代码走查与代码审查很详细,都是以小组为单位进行代码阅读,是
一系列规程和错误检查技术的集合。 代码走查是以小组为单元进行代码阅读,也是一系列规程和错误检
查技术的集合。 11. 简述单元测试的步骤
1) 自顶向上 从最顶层开始,把顶层调用的单元做成桩模块。对第二层测试, 使用上面已测试的单元做驱动模块。依次类推,直到全部单元测 试结束。
测试目标 测试依据 缺陷定义 测试对象 解决方案 测试结果 测试工具 测试方法 测试策略 测试组织
测试过程
4. 试述软件测试的V型模型,并说明优缺点
优点:采用V模型可使软件的测试活动与其他开发工作并行进行。 缺点:缺乏灵活性,不能提出完整和正确的软件需求。(没找 到。。。。 很抱歉 - -|||)
13. 简述集成测试和系统测试的区别
1、测试对 集成测试:是由通过了单元测试的各个模块所集成起
象
来的组件。
系统测试:除了软件之外,还有计算机硬件及相关的
外围设备、数据采集和传输机构、计算机系统操作人
员等的整个系统。
2、测试时 先进行集成测试,再进行系统测试。 间
3、测试方 集成测试通常会采用灰盒测试。而系统测试通常使用
14) 在线帮助测试 在线帮助测试给用户提供一种实时的咨询服务。
15) 数据转换测试 主要是为了验证已存在的数据转换并载入一个新的数据库是否有效。
16) 验收测试 验收测试是将程序与其最初的需求及最终用户当前的需要进行比
较的过程。
15. 简述测试项目管理的三维模型 (全方位、全过程、多层次) 时间维—全过程管理:对软件测试项目的全过程进行控制。 空间维—全方位管理:对与软件测试质量有关的关键因素实施全方 位管理。 组织维—人员管理:构建从测试热源、测试小组到测试机构的多层 次的管理模式。
测试中接受测试数据,把相关的数据传给被测试单元。 简答题
1. 简述软件生命周期有哪些阶段。 软件生存周期包括可行性分析与开发项计划、需求分析、概要设 计、详细设计、代码实现、软件测试、维护等活动 2. 简述按照测试目标划分的软件测试分类
3.
1. 验收测试 2. 功能测试 3. 性能测试 4. 强度测试 5. 安全性测试 6. 确认测试
法
黑盒测试。
4、测试内 集成测试:是各个单元模块之间的接口,以及各个模
容
块集成后所实现的功能。
系统测试:是整个系统的功能和性能。
5、测试目 集成测试:发现单元之间接口的错误,以及集成后的
的
软件同软件概要设计说明不一致的地方。
系统测试:通过与系统需求定义相比较之后发现软件
与系统定义不符合或矛盾的地方。
2. 请谈谈什么是自动化测试及其好处并举例说明。 自动化测试(automated test)是相对手工测试(manual test)而存 在的一个概念,由手工逐个地运行测试用例的操作过程被测试工具自动 执行的过程所代替。 测试工具的使用是自动化测试的主要特征,其特点:自动运行的速度远 快于手工、测试结果准确、高复用性、永不疲劳 、可靠、独特的能 力。 好处:测试周期缩短、更高质量的产品、软件过程更规范、高昂的团队 士气、节省人力资源,降低企业成本、充分利用硬件资源,降低企业成 本。
用。高度集中精神不但能够提高效率,还能发现更多的软件缺陷, 业绩最棒的往往是团队中做事精力最集中的那些成员。 2. 细心:主要指执行测试工作时候要细心,认真执行测试,不可以忽 略一些细节。某些缺陷如果不细心很难发现,例如一些界面的样 式、文字等。 3. 耐心:很多测试工作有时候显得非常枯燥,需要很大的耐心才可以 做好。如果比较浮躁,就不会做到“专心”和“细心”,这将让很 多软件缺陷从你眼前逃过。
的便捷都得到测试。 因果图法:把输入条件视为“因”,把输出条件视为“果”,采用
逻辑图的形式来表达功能说明书中输入条件的各种组合与输出的关系。 猜错法:拖过列出可能有的错误和一撮情况表,对每种情况都进行
测试用力的设计。 10. 简述代码走查和代码审查的区别 代码审查可以被看成是一种特殊的审查方式,审查小组选取典型代
7) 备份测试 是为了验证系统在软件或者硬件失败的事件中备份其数据的能力, 属于恢复性测试。
8) GUI测试 GUI即图形化用户接口,GUI测试分为两个部分,一方面要能使得界面 实现与最初设计的情况相符合;另一方面是要确认界面能够正确处 理事件。
9) 健壮性测试 又称容错性测试。测试系统在出现故障时,是否能够自动恢复或者 忽略故障继续运行。
4) 综合测试 在单元测试中,为了有效地减少开发桩模块的工作量,可以考虑 综合自底向上测试策略和孤立测试策略。
12. 简述软件集成策略。
1. 基于分解的集成(大爆炸集成、自定行下、自底向上集成)
2.
1. 三明治集成 2. 基于调用同的集成 3. 基于路径的集成 4. 分层集成 5. 基于功能的集成 6. 高频集成 7. 基于进度的集成 8. 基于风险的集成 9. 基于事件的集成 10. 基于使用的集成
5. 请谈谈你认为一个优秀的测试工程师应该具备哪些素质 作为一名优秀的测试工程师,首先要对测试工作有兴趣:测试工作很多 时候都是显得有些枯燥的,因此热爱测试工作,才更容易做好测试工 作。因此,除了具有前面的专业技能和行业知识外,测试人员应该具有 一些基本的个人素养,即下面的“五心”。 1. 专心:主要指测试人员在执行测试任务的时候要专心,不可一心二
3) 压力测试 压力测试又称强度测试,是在各种资源超负荷情况下观察系统的运行 情况。
4) 容量测试 容量测试是面向数据的,在系统正常运行的范围内测试并确定系统
能够处理的数据容量。也就是观察系统承受超额的数据容量的能 力。
5) 安全性测试 要验证系统内的保护机制能否抵御入侵者的攻击。
6) 恢复性测试 恢复性测试的目标就是验证系统从软件或者硬件失败中恢复的能 力。在测试过程中会采取各种人工干预方式使软件出错,而不能正 常工作,进而检验系统的恢复能力。
3. 试述软件测试的概念模型,并解释。 在开发过程中,从需求阶段到编码阶段,主要是采用验证手段进行测的正确性的评估。编码完成并经过代码审查等测试之后, 此时的测试主要在软件的可执行模式下进行,即利用确认手段进行测 试,确认测试包括单元测试、集成测试、系统测试以及用户验收测试 等,其相应的关系。
白盒测试是吧测试对象看做一个打开的盒子。利用白盒测试法进行 动态测试时,除了要验证软件的功能特性之外,还特别需要测试软件产 品内部结构和处理过程。
白盒测试法的覆盖标准由逻辑覆盖测试、基本路径测试和循环结构 覆盖测试。
10. 单元测试 单元测试的对象是程序系统中的最小单元---模块。单元测试的依 据是详细设喵叔,单元测试应对模块内所有重要的控制路径测试测试用 例,以便发现模块内部的错误。单元测试多采用白盒测试技术,对系统 内多个模块可以进行并行测试。 11. 集成测试 集成测试,也称组装测试、联合测试、子系统测试,在单元测试的 基础上,将模块按照设计要求组装起来同时进行测试,主要目标是发现 与接口有关的模块之间问题。两种集成方式:一次性集成方式和增殖式 集成方式。 12. 系统测试 系统测试是将软件放在整个计算机环境下,包括软硬件平台、某些 支持软件、数据和人员等,在实际运行环境下进行一系列的测试,包括 恢复测试、安全测试、强度测试和性能测试等。 13. 验收测试 验收测试在系统测试通过后开始,在某种意义上是由用户/客户进 行的系统测试,但又不是体统测试的重复。 14. 桩模块 又称桩单元。用以仿真被测试单元工作过程中所调用的单元,由被 测试单元调用,一般只进行很少的数据处理,以便于检车被测试单元与 其下级单元的接口。 15. 驱动模块 也称驱动单元,用以仿真被测试单元的上级单元,驱动单元在单元
2) 自底向上 先对模块调用图上的最底层模块开始测试,模拟调用该模块的模 块为驱动模块。其次,对上一层模块进行单元测试,用已经被测 试过的模块做桩模块。依次类推,直到全部单元测试结束。
3) 孤立测试 步骤:无需考虑每个模块与其他模块之间的关系,分别为每个模 块单独设计桩模块和驱动模块,逐一完成所有单元模块的测试。
论述题 1. 什么是软件测试,请谈谈为什么要进行软件测试? 软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能 测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测 试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故 障,以确保开发的产品适合需求。 因为软件缺陷的存在。因为只有通过测试,才可以发现软件缺陷。也只 有发现了缺陷,才可以将软件缺陷从软件产品或软件系统中清理出去。 软件中存在的缺陷给我们带来的损失是巨大的,这也说明了软件测试的 必要性和重要性
成熟阶段1983年至今:国际标准Std 829-1983,形成一门独立 的学科和专业,成为软件工程学科中的一个重要组成部分。 7. 简述软件缺陷的等级划分 分为重要缺陷和一般缺陷。 重要缺陷是指该缺陷若被激发会对设计文档/需求文档中规定的主 要功能的完成产生不利/潜在不利影响,从而导致功能降级的代码问 题。 一般缺陷是指该缺陷若被激发,不会影响设计文档/需求文档中规 定的主要功能的完成,但对运行或操作会产生/潜在产生轻微影响的代 码问题。 8. 简述测试用例的要素及其含义。 测试目标:测试的目的结果 测试用例:测试时输入的测试数据 预期结果:输入测试用例的预期结果 9. 简述黑盒测试技术方法种类 四种基本方法为:等价类划分法、边界值分类法、因果图法、猜错 法。 等价类划分法:分为有效等价类,即合理的,有意义的输入数据构 成的集合;无效等价类,即不合理的、没有意义的输入数据构成的集 合。 边界值分类法:选择等价类的边缘值作为测试用例,让每个等价类