精华内容
下载资源
问答
  • 软件 质量 保证 测试,不错的书籍,免费的
  • 软件质量保证与测试

    2013-03-18 20:33:32
    软件质量保证与测试重要PPT,内容详细层次清晰
  • 软件质量保证与测试.pdf
  • 软件质量保证与测试 第六章检查代码 XXX 本章重点 台静态白盒测试的好夂 各种类型的静态白盒测试综述 编码规范和标准 如何从整体审查代码错处 6.1静态白盒测试:检查设计和代码 静态白盒测试检查代码,在不执行的条件 ...
  • 武汉理工大学软件质量保证与测试课程实验报告,内含:黑盒测试实验、白盒测试实验、负载测试实验
  • 软件质量保证与测试实验报告,黑盒测试,白盒测试,系统测试
  • 东北大学软件质量保证与测试个人笔记课堂测试,笔记包括pdfmd格式,课堂测试为白盒黑盒测试
  • 武汉理工大学 软件质量保证与测试 五次课后习题答案
  • 哈工大 软件质量保证与测试 ppt哈工大 软件质量保证与测试 ppt
  • 软件质量保证与测试 问答题

    千次阅读 2019-07-08 12:15:44
    软件质量保证与测试 问答题 18道简答题目及答案 软件质量保证活动的实施步骤 定义项目类型和生命周期 建立SQA计划,确定项目审计内容 生成SQA报告 审计SQA报告 独立汇报 简述软件质量保证的基本目标和任务 ...

    软件质量保证与测试 问答题


    18道简答题目及答案


    1. 软件质量保证活动的实施步骤
      • 定义项目类型和生命周期
      • 建立SQA计划,确定项目审计内容
      • 生成SQA报告
      • 审计SQA报告
      • 独立汇报

    1. 简述软件质量保证的基本目标和任务
      • 基本目标:
        • 目标1:软件质量保证活动是有计划的
        • 目标2:软件产品和活动与适用的标准、规程和需求的符合性要得到客观验证
        • 目标3:相关的小组和个人要被告知软件质量保证的活动和结果
        • 目标4:高级管理者处理在软件项目内部不能解决的不符合问题。
      • 任务:提供成员与管理阶层客观洞察流程与相关工作产品。

    1. 什么是软件评审?为什么需要进行软件评审?
      • 软件评审
        • 关于审查和批准项目计划,项目变更和工作进展评价的一个步骤。
      • 为什么要软件评审
        • 在开发过程中,评审可以让我们获得以下收益:
          • 提高项目的生产率。这是由于早期发现了错误,因而减少了返工时间,还可能减少测试时间
          • 改善软件的质量。
          • 在评审过程中,使开发团队的其他成员更熟悉产品和开发过
            程。
          • 通过评审,标志着软件开发的一个阶段的完成。
          • 生产出更容易维护的软件。主要原因是:对于被评审的软件,评审者必须是非常熟悉的;同时,在评审过程中,一定会产生并利用很多证明文档,于是评审就迫使开发者产生出许多有用的文档,而这些文档如果不是因为评审,则在整个项目期间可能都不会生产。此外,评审过程也将增加对所开发软件的理解。

    1. 软件评审包括哪些内容
      • 管理评审
      • 技术评审
      • 文档评审
      • 过程评审

    1. 软件评审主要有哪些方法(需简要说明)?它们的异同点是什么?
      • 方法(从上到下,越来越正式)
        • 特别检查
        • 轮查
        • 走查
        • 团队评审
        • 检视
      • 异同点
        image_1df5c2pef1lklt81ojm1amg1igq9.png-61.4kB

    1. 简述CMM的作用和关键域等级
      作用:是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。
      关键域等级:
      • 初始级   过程没有定义,控制很差,反应式
      • 可重复级  过程由具体项目而定,组织是反应式
      • 已定义级  项目通过组织发展方法,调整过程
      • 已管理级  过程呗检测和监控
      • 优化级   聚焦过程改进

    1. 测试计划的目的是什么?测试计划文档的内容应该包括什么?其中哪些是最重要的?
      • 目的
      • 内容
        • 目标。必须定义每个测试阶段的目标。
        • 结束准则。必须制定准则以规定每个测试阶段何时可以结束,该问题将在下一节中讨论。
        • 进度。每个阶段都须有时间表。应指出何时设计、编写和执行测试用例,某些软件技术,如极限编程要求在程序编码开始之前就设计测试用例和单元测试。
        • 责任。对于每一个阶段,应当确定谁来设计、编写和验证测试用例,谁来修改发现的软件错误。由于在大型项目中讨论特定的测试结果是否代表错误时,有可能出现争端,因此还需要确定一名仲裁者。
        • 测试用例库及标准。在大型项目中,用于确定、编写以及存储测试用例的系统方法是必须的。
        • 工具。必须确定需要使用的测试工具,包括计划由谁来开发或采购、如何使用工具以及何时需要使用工具
        • 计算机时间。计划每个测试阶段所需的计算机时间,包括用来编译应用程序的服务器(如果需要的话)、用来进行安装测试所需的桌面计算机、用来运行基于web应用程序的web服务器、联网的设备(如果需要的话)等等。
        • 硬件配置。如果需要特别的硬件配置或设备,则需要一份计划来描述该需求,该如何满足需求以及何时需要满足。
        • 集成。测试计划的一部分是定义程序如何组装在一起的方法(例如自顶向下的增量测试)。一个系统如果包含大的子系统或程序,可按增量的方式组装在一起,例如可以使用自顶向下或自底向上的方法,但是这些构造块是程序或子系统,而不是模块。如果是这种情况,就需要一个系统集成计划。系统集成计划规定了系统集成的顺序、系统每个版本的功能以及编写“脚手架”代码以模拟不存在的部件的职责分工。
        • 跟踪步骤。必须跟踪测试进行中的方方面面,包括对错误易发模块的定位,以及有关进度、资源和结束准则的进展估计。
        • 调试步骤。必须制定上报已发现错误、跟踪错误修改进程以及将修改部分加入系统中去的机制。调试计划中还应包括进度、责任分工、工具以及计算机时间/资源等。
        • 回归测试。回归测试在对程序作了功能改进或进行了修改之后进行,其目的是判断程序的改动是否引起了程序其他方面的退步。回归测试通常重新执行测试用例中的某个子集。回归测试很重要,因为对程序的改动和对错误的纠正要比原来的程序代码更容易出错(与报纸排版错误很相似,这些错误通常由于最后所做的编辑改动而引起的,而不是修改先前版本而引起的)。回归测试计划规定了测试人员、测试方法和测试时间,它也是必须的。
      • 最重要的

    1. 简要描述主要的软件可靠性参数
      image_1df7nji545jdtuh19vpovj1m8e19.png-303.1kB
      image_1df7nn4sig2b13g4temj861n7u26.png-362.6kB
      image_1df7nni5ejlqacd1h5d1mu3f2j2j.png-20.8kB

    1. 简要描述提高软件可靠性的方法和技术(6条,每一点再略加说明)
      • 建立以可靠性为核心的质量标准。  确定划分的各开发过程的质量度量
      • 选择开发方法  目前的软件开发方法主要有Parnas方法、Yourdon方法、面向数据结构的Jackson方法和Warnier方法……
      • 软件重用  软件重用不仅仅是指软件本身,也可以是软件的开发思想方法、文档,甚至环境、数据等,包括三个方面内容的重用:开发过程重用、软件构件重用、知识重用。
      • 使用开发管理工具  开发一个大的软件系统,离不开开发管理工具,作为一个项目管理员,仅仅靠人来管理是不够的,需要有开发管理工具来辅助解决开发过程中遇到的各种各样的问题,以提高开发效率和产品质量
      • 加强测试  利用多种测试的规范及技术,加强测试的严密性。
      • 容错设计  容错技术的基本思想是使软件内潜在的差错对可靠性的影响缩小控制到最低程度。

    1. 简述影响软件质量的因素
      image_1df7ocq6sgfosccqlsp05tc330.png-230.2kB

    1. 简述自动化测试的优点,并例举两种以上的自动化测试工具软件

      • 对程序的回归测试更方便。这可能是自动化测试最主要的任务,特别是在程序修改比较频繁时,效果是非常明显的。由于回归测试的动作和用例是完全设计好的,测试期望的结果也是完全可以预料的,将回归测试自动运行,可以极大提高测试效率,缩短回归测试时间。
      • 可以运行更多更繁琐的测试。自动化的一个明显的好处是可以在较少的时间内运行更多的测试。
      • 可以执行一些手工测试困难或不可能进行的测试。比如,对于大量用户的测试,不可能同时让足够多的测试人员同时进行测试,但是却可以通过自动化测试模拟同时有许多用户,从而达到测试的目的。(理解:性能测试中的工具,如:JEMETER,LR等)
      • 更好地利用资源 将繁琐的任务自动化,可以提高准确性和测试人员的积极性,将测试技术人员解脱出来投入更多精力设计更好的测试用例。(把节省的人力投入到更有意义的用例设计上)将可自动测试的测试自动化后,可以让测试人员专注于手工测试部分,提高手工测试的效率。
      • 测试具有一致性和可重复性 由于测试是自动执行的,每次测试的结果和执行的内容的一致性是可以得到保障的,从而达到测试的可重复的效果。(脚本的复用性)
      • 测试的复用性。由于自动测试通常采用脚本技术,这样就有可能只需要做少量的甚至不做修改,实现在不同的测试过程中使用相同的用例。
      • 增加软件信任度 由于测试是自动执行的,所以不存在执行过程中的疏忽和错误,完全取决于测试的设计质量。一旦软件通过了强有力的自动测试后,软件的信任度自然会增加。
      • C++ test和Visual Unit

    1. 软件过程度量的目标、对象、方法和结果
      • 软件过程度量的目标是为了对软件过程的行为进行目标管理,并在度量的基础上对软件过程进行控制,评价和改善软件过程度量最终为项目管理和软件过程管理服务。
      • 对象主要包括三个:工作产品、软件项目和过程。
      • 软件过程度量的方法对软件过程度量的方法是过程性方法,软件过程行为是事件行为,对过程的度量也具有过程性,从制定度量目标到收集数据再到数据分析表示了典型的度量阶段。
      • 软件度量的结果通常是软件产品的复杂度模型和可靠性模型等。

    1. 简要描述软件配置管理过程
      1. 项目计划阶段
        2. CCB根据项目的开发计划确定各个里程碑和开发策略;
        3. CMO根据CCB的规划,制定详细的配置管理计划,交CCB审核;
        4. CCB通过配置管理计划后交项目经理批准,发布实施。
      2. 项目开发维护阶段
        6. 主要由CMO完成的管理和维护工作;
        7. 由SIO和DEV具体执行软件配置管理策略;
        8. 变更流程。

    1. 简述软件质量控制的基本概念并例举三种软件质量控制的基本方法
      • 基本概念 软件质量控制是一组由开发组织使用的程序和方法,使用它可在规定的资金投入和时间限制的条件下,提供满足客户质量要求的软件产品并持续不断地改善开发过程和开发组织本身,以提高将来生产高质量软件产品的能力。
      • 基本方法
        • 目标问题度量法
        • 风险管理法
        • PDCA质量控制法

    1. 简述软件质量控制的实施过程
      image_1df7qinn41nov1li9hm08bkaqf3t.png-51.1kB

    1. 简要描述软件质量保证体系的目标
      软件质量保证的目标是以独立审查的方式,从第三方的角度监控软件开发任务的执行,就软件项目是否正确遵循已制定的计划、标准和规程给开发人员和管理层提供反映产品和过程质量的信息和数据,提高项目透明度,同时辅助软件工程取得高质量的软件产品。

    1. 软件测试要经过哪些阶段?这些测试阶段与软件开发各阶段之间由什么关系?
      单元测试(unit testing):对每个模块的考察、测试;
      集成测试(integration testing):组装测试,联调,考察模块间的接口和联系;
      系统测试(system testing):把计算机和其他部件联结起来,考察软件是否满足系统总的功能要求和性能要求;
      验收测试(acceptance testing):用户为主的测试。

    1. 简述软件配置管理的关键活动
      一个组织如何标识和管理程序(及其文档)的很多现存
      版本,以使得变化可以高效地进行?
      一个组织如何在软件被发布给客户之前和之后控制变化?
      谁负责批准变化,并给变化确定优先级?
      我们如何保证变化已经被恰当地进行?
      采用什么机制去告知其他人员已经实行的变化?


    展开全文
  • 软件质量保证与测试的意义,原则和挑战0 目录1 绪论1.3 软件质量保证与测试的意义,原则和挑战1.3.1课堂重点1.3.2测试与作业2 下一章 0 目录 1 绪论 1.3 软件质量保证与测试的意义,原则和挑战 1.3.1课堂重点 ...

    慕课金陵科技学院.软件质量保证与测试.第一章.绪论.软件质量保证与测试的意义,原则和挑战

    0 目录

    1 绪论

    1.3 软件质量保证与测试的意义,原则和挑战

    1.3.1课堂重点

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    1.3.2测试与作业

    软件质量保证与测试人员需要的的基本素质有( )
    A.计算机专业技能
    B.测试专业技能
    C.行业知识
    D.以上都是

    正确答案:D

    1 有一个武器控制软件,请问它的质量成本中,哪部分成本变化范围最大?
    A.预防成本B.评估成本C.销售成本D.失败成本

    正确答案:D

    2 下一章

    博客地址:

    展开全文
  • 内容包括:软件质量保证与测试软件质量概念、软件质量保证概要、软件测试概述、软件测试过程、黑盒测试、静态测试、白盒测试、面向对象测试
  • 软件质量保证与测试ppt(报告所发现的缺陷.ppt、并发故障模式.ppt等 )
  • 软件测试实验报告 QTP实验报告 软件质量保证与测试QTP网站测试基本实力
  • 哈工大计算机学院,软件学院硕士课程考试,2018。 课程名:软件质量保障与测试
  • 东北大学吴辰铌老师《软件质量保证与测试》干货内容: 1.个人课上整理笔记 2.软件测试复习题(含随堂测验真题和答案,祖传期末复习题(不是真题)) 3.《老来乐手机应用》个人实验报告(仅供学习交流使用,不得抄袭...
  • 慕课软件质量保证与测试(习题集)

    千次阅读 多人点赞 2020-05-09 17:08:53
    习题汇总0 总目录1 绪论1.1 软件质量保证与测试的产生发展1.2 软件缺陷,软件错误,软件故障1.3 软件质量保证与测试的意义,原则和挑战1.4 单元测试1.5 课后作业2 软件测试策略2.1 软件测试的模型,过程和生命周期2.2 ...

    慕课金陵科技学院.软件质量保证与测试.期末复习.习题汇总

    0 总目录

    1 绪论

    1.1 软件质量保证与测试的产生与发展

    第一类测试方法与第二类测试方法的本质区别体现在:
    A.执行测试的人员不同
    B.执行测试的时间不同
    C.执行测试的目的不同
    D.执行测试的效果不同

    正确答案:C

    1.2 软件缺陷,软件错误,软件故障

    1 下列那种不属于软件缺陷:
    A.银行POS机在用户取款时翻倍吐钱,取100,吐200
    B.计算机病毒发作,屏幕出现熊猫烧香画面
    C.网上售票软件反应迟钝,用户难以正常买票
    D.某软件在进行修改升级之后,原来正常的功能现在出错了

    正确答案:B

    1.3 软件质量保证与测试的意义,原则和挑战

    软件质量保证与测试人员需要的的基本素质有( )
    A.计算机专业技能
    B.测试专业技能
    C.行业知识
    D.以上都是

    正确答案:D

    1 有一个武器控制软件,请问它的质量成本中,哪部分成本变化范围最大?
    A.预防成本B.评估成本C.销售成本D.失败成本

    正确答案:D

    1.4 单元测试

    1单选(1分)为了提高软件测试的效率,应该 ( )。
    A.选择发现错误可能性大的数据作为测试数据1.00/1.00
    B.取一切可能的输入数据作为测试数据
    C.随机地选取测试数据
    D. 选取最常见的数据作为测试数据

    正确答案:A

    2单选(1分)以下哪一类人员与软件质量保证与测试工作无关?
    A.软件销售人员1.00/1.00B.软件需求分析人员C.软件设计人员D.代码开发人员

    正确答案:A

    3单选(1分)经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现并改正的错误较多,则该模块中残存的错误数目与其他模块相比,通常应该( )。
    A.相似B.较少C.较多1.00/1.00D.不确定

    正确答案:C

    4单选(1分)软件测试的目的是 ( )。
    A.发现并修改程序中的错误
    B.证明程序是正确的
    C.尽可能多地发现程序中的错误1.00/1.00
    D.发现程序中的所有错误

    正确答案:C

    5单选(1分)以下那一种选项不属于软件缺陷( )。
    A.软件没有实现产品规格说明所要求的功能
    B.软件实现了产品规格没有提到的功能
    C.软件中出现了产品规格说明不应该出现的功能
    D.软件满足用户需求,但测试人员认为用户需求不合常理。

    正确答案:D

    6判断(1分)单元测试通常由开发人员进行。
    A.1.00/1.00B.
    正确答案:对

    7判断(1分)测试是为了验证软件已正确地实现了用户的要求。
    A.B.1.00/1.00
    正确答案:错

    8判断(1分)好的测试员不懈追求完美,保证通过测试的软件不会再有缺陷。
    A.B.1.00/1.00
    正确答案:错

    9填空(2分)软件质量保证的英文缩写是( )。
    正确答案:SQA

    10填空(2分)IEEE对软件测试的定义是:使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足( )或弄清预期结果与实际结果之间的差别 。
    正确答案:规定的需求

    1.5 课后作业

    1(40分)软件缺陷产生的原因有哪些?

    答:针对软件开发过程的主体和对象,软件缺陷的产生,主要是由软件产品的特点和开发过程决定的.从软件自身的特点,团队工作和技术问题等角度分析软件缺陷产生的原因分为以下四点:
    软件自身的特点:1软件自身的实际需求不清晰,导致设计目标偏离实际需求,从而引起功能或产品特征上的缺陷.2系统结构非常复杂,而又无法设计成一个很好的层次结构或组件结构,结果导致意想不到的问题或系统维护,扩充上的困难.即使设计成良好的面向对象的系统,由于对象,类太多,很难完成对各种对象,类相互作用的组合测试,而隐藏着一些参数传递,方法调用,对象状态变化等方面问题.
    3对一些实时应用,需要进行精心设计和技术处理,保证精确的时间同步,否则容易引起时间上不协调.不一致所带来的问题.4系统运行环境的复杂,不仅用户使用的计算机环境千变万化,包括用户的各种操作方式或各种不同的输入数据,容易引起一些特定用户环境下的问题.5.由于通信端口多.存取和加密手段的矛盾性等,会造成系统的安全性或适用性等问题.
    团队合作:1系统需求分析时对客户的需求理解不清楚,或者和用户的沟通存在一些困难.
    2不同阶段的开发人员相互理解不一致.
    3对于设计或编程上的一些假定或依赖性,相关人员没有充分沟通.
    4项目组成员技术水平参差不齐,新员工较多,或培训不够等原因也容易引起问题.
    设计和实现问题
    1系统结构设计不合理.算法选择不科学,造成系统性能低下.
    2没有考虑系统崩溃后的自我恢复或数据的异地备份,灾难性恢复等问题,从而存在系统安全性.可靠性的隐患.
    3对程序逻辑路径或数据范围的边界考虑不够周全,漏掉某些边界条件,造成容量或边界错误.
    4算法错误:在给定条件下没能给出正确或准确的结果.
    5语法错误:对于编译性语言程序,编译器可以发现这类问题;但对于解释性语言程序,只能在测试运行时发现.
    6计算和精度问题:计算的结果没有满足所需要的精度.
    7接口参数传递不匹配,导致模块集成出现问题.
    管理问题
    1缺乏质量文化,不重视质量计划,对质量.资源.任务.成本等的平衡性把握不好,容易挤掉需求分析.评审.测试.等时间,遗留的缺陷会比较多.
    2开发流程不够完善和规范,存在太多的随机性和缺乏严谨的内审或评审机制,容易产生问题.
    例如对需求变化,设计更改,代码修正等因素缺乏严格规范的管理机制,导致开发过程难以稳步推进.
    3开发周期短,需求分析.设计.编程.测试等各项工作不能完全按照定义好的流程来进行,工作不够充分,结果也就不完整.不准确,错误较多;周期短,还给各类开发人员造成太大的压力,引起一些人为的错误.
    4文档不完善,风险估计不足等.
    

    2(60分)哪些情况属于软件缺陷?

    答:软件出现以下情况属于软件缺陷包括:
    1软件出现了产品说明书指明不会出现的错误.
    2软件未达到产品说明书的功能.
    3软件功能超出产品说明书指明范围.
    4软件未达到产品说明书虽未指出但应达到的目标.
    5软件难以理解,不易使用,运行速度缓慢,最终用户认为不好.
    

    2 软件测试策略

    2.1 软件测试的模型,过程和生命周期

    在软件生命周期的哪一个阶段,软件缺陷修复费用最低 ( )
    A.需求分析(编制产品说明书)B.设计C.编码D.产品发布

    正确答案:A

    2.2 软件测试的方法和技术

    下列哪项不属于黑盒测试的优点( )。
    A.不需要源代码B.测试简单易行
    C.可以对代码进行有针对性的测试
    D.可以发现软件功能上的问题

    正确答案:C

    2.3 单元测试

    1单选(1分)在软件生命周期的哪一个阶段,软件缺陷修复的成本最高 ( )
    A.需求分析(编制产品说明书)B.产品发布1.00/1.00C.编码D.设计

    正确答案:B

    2单选(1分)下列中不属于测试原则的是( )。
    A.找到的缺陷越多,软件遗留的缺陷就越少1.00/1.00
    B.完全测试程序是不可能的
    C.软件测试是有风险的行为
    D.测试无法找出所有的软件缺陷

    正确答案:A

    3单选(1分)较实用的软件测试停止标准是( )。
    A.根据查出的缺陷总数量决定是否停止测试。
    B.分析发现的缺陷数量和测试投入成本曲线图,确定应继续测试还是停止测试。1.00/1.00
    C.测试成本超过了预期计划,则停止测试。
    D.测试超过了预定时间,则停止测试。

    正确答案:B

    4单选(1分)软件测试的局限性不包括( )
    A.有的缺陷与特定的环境条件有关。
    B.巧合性有时会导致错误的代码得到正确的结果,掩盖了问题。
    C.软件测试会导致成本增加,项目总体效益降低。1.00/1.00
    D.因为输入/状态空间的无限性,测试不可能完全彻底。

    正确答案:C

    5单选(1分)划分软件测试属于白盒测试还是黑盒测试的依据是 ( )
    A.是否能看到软件文档
    B.是否能看到被测源程序
    C.是否执行程序代码0.00/1.00
    D.运行结果是否确定

    正确答案:B

    6判断(1分)软件测试针对的是初级程序员编写的程序,资深程序员编写的程序无需测试。( )
    A.B.1.00/1.00

    正确答案:错

    7判断(1分)一个软件存在哪些缺陷,开发者和用户的立场是一致的。( )
    A.1.00/1.00B.

    正确答案:错

    8判断(1分)发现错误多的模块,残留在模块中的错误也多。( )
    A.0.00/1.00B.

    正确答案:对

    9填空(2分)动态测试的两个基本要素是____________、_______________。
    正确答案:
    被测试程序
    测试用例

    10填空(2分)按照是否需要知道被测试程序的内部结构,测试方法可以分为:
    正确答案:
    黑盒测试
    白盒测试

    2.4 课后作业

    1(1分)软件测试技术可以分为静态测试和动态测试,下列说法中错误的是( )。
    A、静态测试是指不运行程序,通过检查和阅读等手段来发现程序中的错误。
    B、动态测试是指实际运行程序,通过运行的结果来发现程序中的错误。
    C、动态测试包括黑盒测试和白盒测试。
    D、白盒测试是静态测试,黑盒测试是动态测试。
    参考答案:D

    2(1分)划分软件测试属于白盒测试还是黑盒测试的依据是 ( )
    A、是否执行程序代码
    B、是否能看到软件设计文档
    C、是否能看到被测源程序
    D、运行结果是否确定
    参考答案:C

    3(1分)( )把黑盒测试和白盒测试的界限打乱了。
    A、灰盒测试 B、动态测试 C、静态测试 D、失败测试
    参考答案:A

    4(1分)在软件测试用例设计的方法中,最常用的方法是黑盒测试和白盒测试,其中不属于白盒测试所关注的是( )
    A、程序结构 B、软件外部功能 C、程序正确性 D、程序内部逻辑
    参考答案:B

    5(1分)下列哪项不属于黑盒测试的优点( )。
    A. 不需要源代码
    B. 测试简单易行
    C. 可以对代码进行有针对性的测试
    D. 可以发现软件功能上的问题
    参考答案:C

    6(2分)动态测试的两个基本要素是_______________、__________________。
    参考答案:
    被测试程序 测试用例

    7(2分)软件测试的 W 模型由两个 V 字组成,分别代表_________与_________过程。
    参考答案:
    软件质量验证,确认,测试 软件开发

    8(2分)按照是否需要知道被测试程序的内部结构,测试方法可以分为:
    参考答案:
    黑盒测试 白盒测试

    9(1分)(判断题)黑盒测试的测试用例是根据程序内部逻辑设计的。( )
    参考答案:错

    10(1分)(判断题) 软件测试是有效的发现软件缺陷的手段。( )
    参考答案:对

    11(1分)(判断题)集成测试计划在需求分析阶段末提交。( )
    参考答案:错

    12(4分) 请分析黑盒测试、白盒测试、静态测试、动态测试之间的关系。
    参考答案:

    答:四者之间的关系:
    1黑盒测试一定都是动态测试, 因为黑盒测试都需要运行被测试程序;
    2白盒测试既有静态测试, 如代码检查, 静态结构分析等, 也有动态测试, 如逻辑覆盖测试等;
    3动态测试有可能是黑盒测试, 如根据软件规格说明书进行功能测试,也有可能是白盒测试,如针对源程序做逻辑覆盖测试;
    4静态测试只可能是白盒测试, 因为黑盒测试一定都是动态测试, 都需要运行被测试程序.​
    

    13(8分)试对比分析黑盒测试、白盒测试各自的优缺点。
    参考答案:

    答:1. 黑盒测试的优点有 : 	
    1)比较简单,不需要了解程序的内部的代码及实现
    2)与软件的内部实现无关
    3)从用户的角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题
    4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能
    5)在做软件自动化测试时较为方便
    缺点 :
    1)不可能覆盖所有的代码, 覆盖率较低,大概只能达到总代码量的30%
    2)自动化测试的复用性较低。
    
    2. 白盒测试的优点有 :
    1)帮助软件测试人员增大代码的覆盖率。 提供代码的质量,发现代码中隐藏的问题
    缺点 :
    1)程序运行会有很多不同的路径,不可能测试所有的运行路径
    2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计是否正确,可能会漏掉一些功能需求
    3)系统庞大时,测试开销会非常大。
    

    14(6分) 你认为应如何对一个软件实施测试,试结合你所参与过的软件项目,阐述软件测试工作的一般过程。
    参考答案:

    答:结合我参与的课程设计和软件开发项目,采用的基本如V模型一样的测试过程.
    过程:需求分析->概要设计->详细设计->编码->单元测试->集成测试->系统测试->验收测试
    测试贯穿者整个软件开发活动的始终,前期恰到其时的测试可以为后期节约大量的时间成本​
    

    15(4分) 黑盒测试是动态测试,请分析动态白盒测试与黑盒测试的区别。
    参考答案:

    答:动态白盒测试: 利用查看代码功能和实现方式得到的信息来设计和执行测试, 也叫结构测试;测试程序接口与结构, 测试依据软件程序, 对程序内部特定部位进行覆盖测试, 无法检验程序外部特性.
    黑盒测试: 已知产品的功能设计规格, 可以进行测试证明每个实现了的功能是否符合要求, 测试功能, 测试依据需求规格说明书, 能站在用户的立场上进行测试, 不能测试程序内部特定部位, 如程序有误, 则无法发现.
    

    3 黑盒测试

    3.1 黑盒测试概述

    黑盒测试技术,使用最广的用例设计技术是( )
    A.等价类划分B.边界值分析C.错误推测法D.逻辑覆盖

    正确答案:A

    3.2 等价类划分测试

    在某大学学籍管理信息系统中,假设学生年龄的输入范围为16-40,则根据黑盒测试中的等价类划分技术,下面划分正确的是( )。
    A.可划分为2个有效等价类,2个无效等价类
    B.可划分为1个有效等价类,2个无效等价类
    C.可划分为2个有效等价类,1个无效等价类
    D.可划分为1个有效等价类,1个无效等价类

    正确答案:B

    3.3 边界值测试

    用边界值分析法,假定“1<=X<=100”,那么整数X在测试中应取的边界值不包括( )。
    A.X=1,X=100;
    B.X=0,X=101;
    C.X=2,X=99;
    D.X=3,X=98;

    正确答案:C

    3.4 错误推测法

    凭经验或直觉推测可能的错误,列出程序中可能有的错误和容易发生错误的特殊情况,选择测试用例的测试方法叫( )。
    A.等价类划分B.边界值分析C.错误推测法D.逻辑覆盖测试

    正确答案:C

    3.5 判定表驱动法

    判定表中一个特定的条件取值组合及其相应要执行的动作称为一条( )。
    A.规则B.变换C.运算D.测试

    正确答案:A

    3.6 因果图法

    ( )方法根据输出对输入的依赖关系设计测试用例。
    A.路径测试B.等价类C.因果图D.归纳测试

    正确答案:C

    3.7 场景法

    对于业务流清晰的系统可以利用( )贯穿整个测试用例设计过程并在用例中综合使用各种测试方法。 A.等价类划分 B.因果图法 C.正交试验法 D.场景法
    正确答案:D

    3.8 正交实验法

    对于参数配置类的软件,要用( )选择较少的组合方式达到最佳效果。
    A.等价类划分 B.因果图法 C.正交试验法 D.场景法
    正确答案:C

    3.9 单元测试

    1单选(1分)在某大学学籍管理信息系统中,假设学生年龄的输入范围为16-40,则根据黑盒测试中的等价类划分技术,下面划分正确的是( )。得分/总分
    A.可划分为2个有效等价类,2个无效等价类
    B.可划分为1个有效等价类,2个无效等价类1.00/1.00
    C.可划分为2个有效等价类,1个无效等价类
    D.可划分为1个有效等价类,1个无效等价类
    正确答案:B

    2单选(1分)在确定黑盒测试策略时,优先选用的方法是 ()
    A.决策表方法 B.边界值分析法 C.等价类划分 D.错误推断法
    正确答案:C

    3单选(1分)凭经验或直觉推测可能的错误,列出程序中可能有的错误和容易发生错误的特殊情况,选择测试用例的测试方法叫( )。
    A.逻辑覆盖测试 B.边界值分析 C.等价类划分 D.错误推测法
    正确答案:D

    4单选(1分)黑盒测试技术中不包括( )。
    A.逻辑覆盖1.00/1.00 B.边界值分析 C.等价类划分 D.错误推测法
    正确答案:A

    5单选(1分)对于业务流清晰的系统可以利用( )贯穿整个测试用例设计过程并在用例中综合使用各种测试方法。
    A.正交试验法 B.场景法 C.因果图法 D.等价类划分
    正确答案:B

    3.10 课后作业

    1(1分)凭经验或直觉推测可能的错误,列出程序中可能有的错误和容易发生错误的特殊情况,选择测试用例的测试方法叫( )
    A等价类划分 B边界值分析 C错误推测法 D逻辑覆盖测试
    参考答案:D

    2(1分)黑盒测试技术中不包括( )。
    A等价类划分 B边界值分析 C错误推测法 D逻辑覆盖
    参考答案:D

    3(1分)黑盒测试技术,使用最广的用例设计技术是( )
    A等价类划分 B边界值分析 C错误推测法 D逻辑覆盖
    参考答案:A

    4(1分)在某大学学籍管理信息系统中,假设学生年龄的输入范围为16-40,则根据黑盒测试中的等价类划分技术,下面划分正确的是( )。
    A可划分为2个有效等价类,2个无效等价类
    B可划分为1个有效等价类,2个无效等价类
    C可划分为2个有效等价类,1个无效等价类
    D可划分为1个有效等价类,1个无效等价类
    参考答案:B

    5(1分)有一组测试用例使得被测程序的每一个分支至少被执行一次,它满足的覆盖标准是( )。
    A语句覆盖 B判定覆盖 C条件覆盖 D路径覆盖
    参考答案:B

    6(1分)在确定黑盒测试策略时,优先选用的方法是 ()
    A边界值分析法 B等价类划分 C错误推断法 D决策表方法
    参考答案:B

    7(1分)( )方法根据输出对输入的依赖关系设计测试用例。
    A路径测试 B等价类 C因果图 D归纳测试
    参考答案:C

    8(1分)对于参数配置类的软件,要用( )选择较少的组合方式达到最佳效果。
    A等价类划分 B因果图法 C正交试验法 D场景法
    参考答案:C

    9(1分)对于业务流清晰的系统可以利用( )贯穿整个测试用例设计过程并在用例中综合使用各种测试方法。
    A等价类划分 B因果图法 C正交试验法 D场景法
    参考答案:D

    10(1分)下列不属于黑盒测试方法的是( )。
    A等价类划分 B因果图 C边界值分析 D变异测试
    参考答案:D

    11(1分)用边界值分析法,假定1<X<100,那么整数X在测试中应取的边界值不包括( )。
    A、X=1,X=100;
    B、X=0,X=101;
    C、X=2,X=99;
    D、X=3,X=98;
    参考答案:C

    12(2分)等价类划分有两种不同的情况:
    参考答案:有效等价类 无效等价类

    13(1分)如果有多个输入条件,并且各个条件之间存在关联,那么仅仅只是覆盖所有的等价类还不够,还需要考虑等价类之间的____________。
    参考答案:组合

    14(2分)各个被测变量的等价类总数等于其____________ 加上 ____________。
    参考答案:有效等价类数 无效等价类数

    15(1分)(判断)一个测试用例可覆盖多个有效等价类和无效等价类。( )
    参考答案:错

    16(1分)(判断)不同的等价类划分得到的测试用例的质量不同。( )
    参考答案:​对

    17(1分)(判断)强健壮等价类测试中测试用例个数为各个被测变量的等价类总数的和。( )
    参考答案:错 注:还有各个被测变量的无效等价类数之和

    18(18分)某种信息加密代码由三部分组成,这三部分的名称和内容分别是加密类型码:空白或三位数字;前缀码 :非’0’或’1’开头的三位数;后缀码 :四位数字。假定被测试的程序能接受一切符合上述规定的信息加密代码,拒绝所有不符合规定的信息加密代码,
    试用等价类划分法,分析它所有的等价类,并设计测试用例。
    参考答案:
    在这里插入图片描述

    19(10分)某“银行网站系统”登录界面如下图所示,
    在这里插入图片描述
    试采用错误推测法,举出10种常见问题或错误,并设计10个测试用例。
    参考答案:
    在这里插入图片描述

    20(20分)有一个在线购物网站系统,主要功能包括登录、商品选购、在线支付完成购物等。用户在使用这些功能时可能会出现各种情况,如账号不存在、密码错误、账户余额不足等。设目前该系统中仅有一个账号abc;密码为123;账户余额200;仅有商品A,售价均为50元,库存为15,商品B售价为50元,库存为0。
    试采用场景法:分析画出事件流图,标注出基本流和备选流;分析生成测试场景。对每一个场景设计相应的测试用例。
    参考答案:
    在这里插入图片描述
    在这里插入图片描述

    21(10分)有一个“用户信息输入”界面如下图,输入项有3个:姓名、昵称、手机号码,状态有两个:填与不填。请采用正交实验法对其进行测试。
    (1)请选择一个合适的正交表
    (2)根据选定的正交表进行变量映射
    (3)写出测试用例
    参考答案:
    在这里插入图片描述

    22(20分)有一个处理单价为5角钱的饮料自动售货机软件,其规格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。
    (1)分析软件规格说明,列出原因和结果。
    (2)画出因果图。
    (3)列出简化后的判定表
    参考答案:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    23(24分)某程序功能为输出某个输入日期明天的日期,例如输入2020年2月2日,则该程序的输出为2020年2月3日。该程序有三个输入变量 year、month、day,分别表示输入日期的年、月、日。
    (1) 请根据程序规格,分别为输入变量year、month、day划分有效等价类。
    (2) 分析程序的规格说明,并结合以上等价类划分的情况,给出程序所有可能采取的操作。
    (3) 根据(1)和(2),画出简化后的决策表,并为每条规则设计测试用例。
    参考答案:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    4 白盒测试

    4.1 白盒测试概述

    分软件测试属于白盒测试还是黑盒测试的依据是 ( )
    A.是否执行程序代码
    B.是否能看到软件设计文档
    C.是否能看到被测源程序
    D.运行结果是否确定
    正确答案:C

    4.2 程序静态测试

    件测试技术可以分为静态测试和动态测试,下列说法中错误的是( )。
    A.静态测试是指不运行程序,通过检查和阅读等手段来发现程序中的错误。
    B.动态测试是指实际运行程序,通过运行的结果来发现程序中的错误。
    C.动态测试包括黑盒测试和白盒测试。
    D.白盒测试是静态测试,黑盒测试是动态测试。
    正确答案:D

    4.3 逻辑覆盖

    列不属于白盒测试中逻辑覆盖标准的是( )。
    A.语句覆盖B.条件覆盖C.分支覆盖D.边界值覆盖
    正确答案:D

    在以下有关逻辑覆盖的说法中错误的说法是( )A.所有满足条件组合覆盖标准的测试用例集,也满足路径覆盖的覆盖标准
    B.条件覆盖能够查出条件中包含的错误,但有时达不到判定覆盖的覆盖率要求
    C.路径覆盖的查错能力很强,但有时达不到条件组合覆盖的覆盖率要求
    D.包含了语句覆盖,但它不能保证每个错误条件都能检查得出来
    正确答案:A

    4.4 基本路径覆盖

    一个程序进行基本路径覆盖测试,所需测试用例的最少个数为( )。
    A.程序中的路径总数
    B.程序中判定节点的个数
    C.程序中的模块数
    D.程序的环路复杂度
    正确答案:D

    4.5 循环测试

    Z路径覆盖把循环结构简化为了( )结构来进行测试。
    A.分支B.顺序C.嵌套D.随机
    正确答案:A

    4.6 程序变异测试

    变异测试是一种( )驱动测试。
    A.问题B.目标C.路径D.错误
    正确答案:D

    4.7 符号测试

    符号测试允许程序的输入不仅仅是具体的数值数据,而且包括( )。
    A.逻辑数据B.浮点数据C.符号值D.特殊值
    正确答案:C

    4.8 程序插桩和调试

    ( )是一种特殊的插桩,是在程序的特定部位插入语句用来检查变量的特性。
    A.赋值B.显示C.比较D.断言
    正确答案:D

    4.9 单元测试

    1单选(1分)下列不属于白盒测试的技术是 ( ) 。
    A.判定覆盖 B.边界值分析 C.语句覆盖 D.基本路径测试
    正确答案:B

    2单选(1分)代码检查法有桌面检查法,走查和( )。
    A.白盒测试 B.动态测试 C.静态测试 D.代码审查
    正确答案:D

    3单选(1分)如果某测试用例集实现了判定覆盖,那么它一定同时实现了该软件的 ( )
    A.条件组合覆盖 B.语句覆盖 C.条件覆盖 D.判定/条件覆盖
    正确答案:B

    4单选(1分)一个程序中所含有的路径数与( )有着直接的关系。
    A.程序模块数 B.程序的复杂程度 C.程序指令执行时间 D.程序语句行数
    正确答案:B

    5单选(1分)针对下面一个程序段:
    If ((M>0) && (N = = 0))
    FUCTION1;
    If ((M = = 10)|| (P > 10))
    FUCTION2;
    其中,FUCTION1、FUCTION2均为语句块。现在选取测试用例:M=10 N=0 P=3 ,该测试用例满足了( )。
    A.路径覆盖 B.判定覆盖 C.语句覆盖 D.条件组合覆
    正确答案:C

    4.10 课后作业

    习题四

    1(1分)下列不属于白盒测试的技术是 ( ) 。
    A、语句覆盖 B、判定覆盖 C、边界值分析 D、基本路径测试
    正确答案:C

    2(1分)某次程序调试没有出现预计的结果,下列( )不可能是导致出错的原因。
    A、变量没有初始化
    B、编写的语句书写格式不规范
    C、循环控制出错
    D、代码输入有误
    正确答案:B

    3(1分)代码检查法有桌面检查法,走查和( )。
    A、静态测试 B、 代码审查 C、动态测试 D、白盒测试
    正确答案:B

    4(1分)如果某测试用例集实现了某软件的路径覆盖,那么它一定同时实现了该软件的 ( )
    A、判定覆盖 B、条件覆盖 C、判定/条件覆盖 D、组合覆盖
    正确答案:A

    5(1分)软件测试的局限性不包括( )
    A、因为输入/状态空间的无限性,测试不可能完全彻底。
    B、巧合性有时会导致错误的代码得到正确的结果,掩盖了问题。
    C、软件测试会导致成本增加,效益降低。
    D、软件缺陷的不确定性。
    正确答案:C

    6(1分)以下哪种测试方法不属于白盒测试技术( )
    A、基本路径测试 B、边界值分析测试 C、程序插桩 D、逻辑覆盖测试
    正确答案:B

    7(1分)调试是( )
    A、发现与预先定义的规格和标准不符合的问题
    B、发现软件错误征兆的过程
    C、有计划的、可重复的过程
    D、消除软件错误的过程
    正确答案:D

    8(1分)使用白盒测试方法时,确定测试数据的依据是指定的覆盖标准和 ( )
    A、程序的注释 B、程序的内部逻辑C、用户使用说明书 D、程序的需求说明
    正确答案:B

    9(1分)数据流覆盖关注的是程序中某个变量从其声明、赋值到引用的变化情况,它是下列哪一种覆盖的变种( )。
    A、语句覆盖 B、控制覆盖 C、分支覆盖 D、路径覆盖
    正确答案:D

    10(1分)如果一个判定中的复合条件表达式为(A > 1)or(B <= 3),则为了达到100%的条件覆盖率,至少需要设计多少个测试用例( )。
    A、1 B、2 C、3 D、4
    正确答案:B

    11(1分)一个程序中所含有的路径数与( )有着直接的关系。
    A、程序的复杂程度 B、程序语句行数C、程序模块数 D、程序指令执行时间
    正确答案:A

    12(1分)条件覆盖的目的是 ( )
    A、使每个判定中的每个条件的可能取值至少满足一次
    B、使程序中的每个判定至少都获得一次"真"值和"假"值。
    C、使每个判定中的所有条件的所有可能取值组合至少出现一次。
    D、使程序中的每个可执行语句至少执行一次。
    正确答案:A

    13(1分)软件调试的目的是( )
    A、发现软件中隐藏的错误
    B、解决测试中发现的错误
    C、尽量不发现错误以便早日提交软件
    D、证明软件的正确性
    正确答案:B

    14(1分)针对下面一个程序段:
    其中,FUCTION1、FUCTION2均为语句块。现在选取测试用例:M=10 N=0 P=3 ,该测试用例满足了( )。

    If ((M>0) && (N = = 0))
    	FUCTION1;
    If ((M = = 10)|| (P > 10))
    	FUCTION2;
    

    A、路径覆盖 B、条件组合覆盖 C、判定覆盖 D、语句覆盖
    正确答案:D

    15(1分)对下面的计算个人所得税程序中,满足判定覆盖的测试用例是( )。

    if (income<800)    taxrate=0;
    else if (income<=1500)    taxrate=0.05;
    else if (income<2000)     taxrate=0.08;
    else taxrate=0.1;
    
    A、income=(799, 1500, 1999, 2000)           B、income=(799, 1501, 2000, 2001)
    C、income=(800, 1500, 2000, 2001)           D、income=(800, 1499, 2000, 2001)
    

    正确答案:A

    16(1分)设有一段程序如下:

    if (a==b  and c==d or e==f)  do  S1
        else  if (p==q  or s==t) do  S2
            else do S3
    

    若要达到“判定—条件覆盖”的要求,最少的测试用例数目是( )
    A、6 B、8 C、3 D、4
    正确答案:C

    17(1分)下列不属于白盒测试中逻辑覆盖标准的是( )。
    A、语句覆盖 B、条件覆盖 C、分支覆盖 D、边界值覆盖
    正确答案:D

    18(1分)在某学校的综合管理系统设计阶段,教师实体在学籍管理子系统中被称为"教师",而在人事管理子系统中被称为"职工",这类冲突描述正确的为( )。
    A、语义冲突 B、命名冲突 C、属性冲突 D、结构冲突
    正确答案:B

    19(3分)代码检查的方式有三种:、_____________。
    正确答案:桌面检查 代码审查 代码走查

    20(3分)数据流分析就是对程序中数据的__________、__________及其之间的__________等进行分析的过程。
    参考答案:定义 引用 依赖关系

    21(1分)____________是逻辑覆盖标准的一种,它要求选取足够多的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次。
    正确答案:条件组合覆盖

    22(1分)(判断)所有满足条件组合覆盖标准的测试用例集,也分支覆盖标准。 ( )
    参考答案:对

    23(1分)(判断)软件测试的目的在于发现错误、改正错误。 ( )
    正确答案:错

    24(1分)(判断)条件覆盖能够查出条件中包含的错误,但有时达不到判定覆盖的覆盖率要求。 ( )
    正确答案:对

    25(1分)(判断)在白盒测试中,如果某种覆盖率达到100% ,就可以保证把所有隐藏的程序缺陷都已经揭露出来了。 ( )
    正确答案:错

    26(1分)(判断)白盒测试的条件覆盖标准强于判定覆盖。 ( )
    正确答案:错

    27(1分)(判断)判定覆盖包含了语句覆盖,但它不能保证每个错误条件都能检查出来。 ( )
    正确答案:对

    28(13分)请为以下程序段设计测试用例集,要求分别满足语句覆盖、判定覆盖、条件覆盖、条件/判定覆盖覆盖、条件组合覆盖。

    public int do_work(int A,int B){          
           int x=0;
           if((A>4) && (B<9)) 
            { x = A-B;}
           if( A==5 && B>28 )  
            { x= A+B;}
            return x;    
         }          
    

    参考答案:
    在这里插入图片描述
    在这里插入图片描述

    29(11分)请为以下程序段设计测试用例集,要求满足条件组合覆盖

    public class Triangle {  
       protected long lborderA = 0;
       protected long lborderB = 0;
       protected long lborderC = 0;
    
       // Constructor
       public Triangle(long lborderA, long lborderB, long lborderC) {
          this.lborderA = lborderA;
          this.lborderB = lborderB;
          this.lborderC = lborderC;   
       } 
    
       public boolean isTriangle(Triangle triangle) {
          boolean isTriangle = false;
     
          // check boundary
          if (triangle.lborderA > 0 && triangle.lborderB > 0 && triangle.lborderC > 0 )
            // check if subtraction of two border larger than the third
          if ((triangle.lborderA-triangle.lborderB) < triangle.lborderC
                  && (triangle.lborderB-triangle.lborderC) < triangle.lborderA
                     && (triangle.lborderC-triangle.lborderA) < triangle.lborderB) 
          {isTriangle = true; }
          return isTriangle;
       }
    }
    

    正确答案:
    在这里插入图片描述
    在这里插入图片描述

    30(13分)请为程序模块Function1
    (1)画出程序控制流图,计算控制流图的环路复杂度
    (2)导出基本路径
    (3)设计基本路径覆盖测试用例
    程序模块Function1代码如下:

    1     public  int  Function1(int num, int cycle, boolean flag)
    2     {
    3            int ret = 0;
    4            while( cycle > 0 )
    5            {
    6                  if( flag == true )
    7                  {
    8                          ret = num - 10;
    9                          break;
    10                 }
    11                 else
    12                 {
    13                        if( num%2 ==0 )
    14                        {
    15                               ret = ret * 10;
    16                        }
    17                        else
    18                        {
    19                               ret = ret + 1;
    20                        }
    21                 }
    22                 cycle--;
    23          }
    24          return ret;
    25   }
    

    正确答案:
    在这里插入图片描述
    在这里插入图片描述

    31(6分)请对以下程序进行插桩,显示循环执行的次数

    public class GCD {
         public int getGCD(int x,int y){
              if(x<1||x>100)
              {
                  System.out.println("参数不正确!");
                  return -1;
              }
    
              if(y<1||y>100)
              {
                  System.out.println("参数不正确!");
                  return -1;
              }
    
              int max,min,result = 1;
              if(x>=y)
              {
                  max = x;
                  min = y;
              }
              else
              {
                  max = y;
                  min = x;
              }
    
              for(int n=1;n<=min;n++)
              {
                  if(min%n==0&&max%n==0)
                  {
                      if(n>result)
                      result = n;
                  }
              }
    
              System.out.println("最大公约数为:"+result);
              return result;
           }
     }
    

    正确答案:

    package com.mozhimen.test;
    
    public class ceshi4_31 {
    
    	int count=0;
    	
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    
    		ceshi4_31 ceshi=new ceshi4_31();
    		
    		int x=4;
    		int y=10;
    		ceshi.getGCD(x,y);
    	}
    
    	public int getGCD(int x,int y){
    		
            if(x<1||x>100)
            {
                System.out.println("参数不正确!");
                return -1;
            }
    
            if(y<1||y>100)
            {
                System.out.println("参数不正确!");
                return -1;
            }
    
            int max,min,result = 1;
            if(x>=y)
            {
                max = x;
                min = y;
            }
            else
            {
                max = y;
                min = x;
            }
    
            for(int n=1;n<=min;n++)
            {
            	count++;
                if(min%n==0&&max%n==0)
                {
                    if(n>result)
                    result = n;
                }
            }
    
            System.out.println("最大公约数为:"+result);
            System.out.println("count:"+count);
            return result;
         }
    }
    

    32(10分)请对以下代码段进行变异,变异规则为将 “++” 替换为 “–”,然后设计测试数据,能够测试发现所有的变异点。

    public class zhengchu {
           public   String  iszhengchu(int n) { 
    			if(n<0||n>500) { 
    				return "error";
    			}
    			int flag=0;
    			String note="";
    			if(n%3==0) {
    			flag++;
    			note=note+" 3";
    		}
    
    		if(n%5==0) {
    			flag++;
    			note+=" 5";
    		}
    
    		if(n%7==0) {
    			flag++;
    			note+=" 7";
    		}
    
    		return "能被"+flag+"个数整除,"+note;      
        }     
    }
    

    正确答案:
    在这里插入图片描述

    5 软件测试过程

    5.1 单元测试

    软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节?( )
    A.集成测试B.单元测试C.目的测试D.确认测试
    正确答案:B

    单元测试一般以( )为主。
    A.白盒测试B.黑盒测试C.系统测试D.分析测试
    正确答案:A

    5.2 集成测试1-简介和相依性分析+集成测试的原因

    集成测试对系统内部的交互以及集成后系统功能检验了何种质量特性( )
    A.正确性B.可靠性C.可使用性D.可维护性
    正确答案:A

    软件测试过程中的集成测试主要是为了发现( )阶段的错误码。
    A.需求分析B.概要设计C.编码D.维护
    正确答案:B

    5.2 集成测试2-方法和分析+自顶向下和自顶向上集成

    集成测试的测试用例是根据( )的结果来设计。
    A.需求分析B.源程序C.概要设计D.详细设计
    正确答案:C

    增量式集成测试有3种方式:自顶向下增量测试方法,( )和混合增量测试方式。
    A.从小到大增量测试方法
    B.自底向上增量测试方法
    C.从大到小增量测试
    D.自上向底增量测试方法
    正确答案:B

    5.2 集成测试3-核心系统先行集成+基于调用图的集成

    核心系统先行集成每次加入一个外围软件部件都产生一个产品( ),直至最后形成稳定的软件产品。
    A.基线B.副本C.分支D.升级
    正确答案:A

    基于调用图的集成主要有相邻集成和( )。
    A.成对集成B.相对集成C.自底向上集成D.自顶向下集成
    正确答案:A

    5.2 集成测试4-高频集成+其他集成测试方法

    ( )测试方法频繁不断地将新代码加入到一个已经稳定的基线中,这样可以尽早地发现代码中的问题,同时控制可能出现的基线偏差,而不至于等到最后阶段各种问题、缺陷和偏差集中暴露,甚至于发现整个软件根本就不是我们所需要的。
    A.高频集成B.成对集成C.三明治集成D.大棒集成
    正确答案:A

    以下关于集成测试的内容正确的表述有( )。
    ①集成测试也叫组装测试或者联合测试;
    ②在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失;
    ③一个模块的功能是否会对另一个模块的功能产生不利的影响;
    ④各个子功能组合起来,能否达到预期要求的父功能;
    ⑤全局数据结构是否有问题;
    ⑥单个模块的误差累积起来,是否会放大,从而达到不能接受的程度;
    A.②④⑤⑥B.③④⑤⑥C.①②③⑤⑥D.以上全部正确
    正确答案:D

    5.3 系统测试1-概述

    系统测试完全采用( )技术,因为这时已不需要考虑组件模块的实现细节,而主要是根据需求分析时确定的标准检验软件是否满足功能、性能和安全等方面的要求。
    A.黑盒测试B.白盒测试C.静态测试D.手工测试
    正确答案:A

    5.3 系统测试项目

    对Web网站进行的测试中,属于功能测试的是 ( )
    A.连接速度测试B.链接测试C.平台测试D.安全性测试
    正确答案:B

    几乎所有的性能测试都会涉及( )。
    A.并发测试B.压力测试C.容量测试D.安装测试
    正确答案:A

    以下哪种软件测试属于软件性能测试的范畴( )。
    A.接口测试B.压力测试C.单元测试D.易用性测试
    正确答案:B

    5.4 验收测试

    下列关于alpha测试的描述中正确的是:( )。
    A.alpha测试一定要真实的最终软件用户参加
    B.alpha测试是集成测试的一种
    C.alpha测试是系统测试的一种
    D.alpha测试是验收测试的一种
    正确答案:D

    5.5 回归测试

    ( )的目的是为了检查验证修改的正确性以及修改对其它部分的影响。
    A.回归测试B.单元测试C.集成测试D.系统测试
    正确答案:A

    5.6 单元测试

    1单选(1分)单元测试中用来模拟被测模块调用者的模块是 ( )
    A.父模块 B.驱动模块 1.00/1.00C.桩模块D.子模块
    正确答案:B

    2单选(1分)在软件底层进行的测试称为 ( )
    A.集成测试B.功能测试C.系统测试 D.单元测试 1.00/1.00
    正确答案:D

    3单选(1分)增量式集成测试有3种方式:自顶向下增量测试方法,( )和混合增量测试方式。
    A.从小到大增量测试方法
    B.自底向上增量测试方法 1.00/1.00
    C.从大到小增量测试方法
    D.自上向底增量测试方法
    正确答案:B

    4单选(1分)用于考察当前软硬件环境下软件系统所能承受的最大负荷并帮助找出系统瓶颈所在的是( )。
    A.容量测试 B.疲劳测试C.负载测试 D.压力测试 1.00/1.00
    正确答案:D

    5单选(1分)下列关于alpha测试的描述中正确的是:( )。
    A.alpha测试是系统测试的一种
    B.alpha测试是验收测试的一种1.00/1.00
    C.alpha测试是集成测试的一种
    D.alpha测试一定要真实的最终软件用户参加
    正确答案:B

    5.7 课后作业

    习题5

    1(1分)软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节?( )
    A.集成测试 B.单元测试  C.系统测试 D.验收测试
    参考答案:B

    2(1分)增量式集成测试有3种方式:自顶向下增量测试方法,( )和混合增量测试方式。
    A.自下向顶增量测试方法
    B.自底向上增量测试方法
    C.自顶向上增量测试方法
    D.自下向顶增量测试方法
    参考答案:B

    3(1分)在软件测试步骤按次序可以划分为以下几步:( )。
    A、单元测试、集成测试、系统测试、验收测试
    B、验收测试、单元测试、系统测试、集成测试
    C、单元测试、集成测试、验收测试、系统测试
    D、系统测试、单元测试、集成测试、验收测试
    参考答案:A

    4(1分)软件验收测试合格通过的标准不包括( )
    A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
    B.至少有一项软件功能超出软件需求分析说明书中的定义,属于软件特色功能。
    C.立项审批表、需求分析文档、设计文档和编码实现一致。
    D.所有在软件测试中被发现的严重软件缺陷均已被修复。
    参考答案:B

    5(1分)下列关于alpha测试的描述中正确的是:( )
    A.alpha测试一定要真实的最终软件用户参加
    B.alpha测试是集成测试的一种
    C.alpha测试是系统测试的一种
    D.alpha测试是验收测试的一种
    参考答案:D

    6(1分)编码阶段产生的错误主要由( )检查出来的。
    A、单元测试 B、集成测试 C、系统测试 D、有效性测试
    参考答案:A

    7(1分)单元测试一般以( )为主。
    A、白盒测试 B、黑盒测试 C、系统测试 D、分析测试
    参考答案:A

    8(1分)单元测试的测试用例主要根据( )的结果来设计。
    A、需求分析 B、源程序 C、概要设计 D、详细设计
    参考答案:D

    9(1分)集成测试的测试用例是根据( )的结果来设计。
    A、需求分析 B、源程序 C、概要设计 D、详细设计
    参考答案:C

    10(1分)集成测试对系统内部的交互以及集成后系统功能检验了何种质量特性( )
    A、正确性 B、可靠性 C、安全性 D、可维护性
    参考答案:A

    11(1分)( )的目的是对即将交付使用的软件系统进行全面的测试,确保最终软件产品满足用户需求。
    A、系统测试   B、集成测试   C、单元测试   D、验收测试
    参考答案:A

    12(1分)单元测试中用来模拟被测模块调用者的模块是 ( )
    A、父模块 B、子模块 C、驱动模块 D、桩模块
    参考答案:C

    13(1分)在自底向上测试中,要编写( )。
    A、测试存根 B、驱动模块 C、桩模块 D、 底层模块。
    参考答案:B

    14(1分)以下哪种软件测试属于软件性能测试的范畴( )。
    A、接口测试 B、压力测试 C、单元测试 D、正确性测试
    参考答案:B

    15(1分)下列关于α测试的描述中,正确的是( )
    A.α测试采用白盒测试技术;
    B.α测试不需要从用户角度考虑问题;
    C.α测试是系统测试的一种;
    D.α测试是验收测试的一种;
    参考答案:D

    16(1分)下列软件属性中,软件产品首要满足的应该是( )
    A、功能需求 B、性能需求 C、可扩展性和灵活性 D、容错纠错能力
    参考答案:A

    17(1分)按照测试组织划分,软件测试可分为:开发方测试,第三方测试,( )。
    A.集成测试 B.单元测试 C.用户测试 D.灰盒测试
    参考答案:C

    18(1分)软件可靠性是指在指定的条件下使用时,软件产品维持规定的性能级别的能力,其子特性( )是指在软件发生故障或者违反指定接口的情况下,软件产品维持规定的性能级别的能力。
    A、成熟性 B、易恢复性 C、容错性 D、稳定性
    参考答案:C

    19(1分)下面哪项对验收测试的描述不正确?( )
    A、与系统测试不同的是以客户业务需求为标准来进行测试
    B、测试人员多由客户方担任,也可以客户委托第三方来进行验收测试
    C、由资深的开发和测试人员来进行测试
    D、不仅仅要验收程序,还要验收相关的文档
    参考答案:C

    20(1分)对于软件的β测试,下列哪些描述是正确的? ( )
    A. β测试就是在软件公司内部展开的测试,由公司专业的测试人员执行的测试。
    B. β测试就是在软件公司内部展开的测试,由公司的非专业测试人员执行的测试。
    C. β测试就是在软件公司外部展开的测试,由非专业的测试人员执行的测试。
    D. β测试就是在软件公司外部展开的测试,由专业的测试人员执行的测试。
    参考答案:C

    21(1分)在程序测试中,用于检查程序模块或子程序之间的调用是否正确的静态分析方法是 ( )
    A、操作性分析 B、可靠性分析 C、引用分析 D、接口分析
    参考答案:C

    22(1分)用于考察当前软硬件环境下软件系统所能承受的最大负荷并帮助找出系统瓶颈所在的是( )。
    A、压力测试 B、容量测试 C、负载测试 D、疲劳测试
    参考答案:A

    23(2分)集成测试以_______________说明书为指导,验收测试以_______________说明书为指导。
    参考答案:概要设计 软件规格

    24(2分)软件验收测试可分为 2 类:__________________、__________________。
    参考答案:α+β测试 正式验收测试

    25(1分)____________指软件系统被修改或扩充后重新进行的测试。
    参考答案:回归测试

    26(1分)____________是在软件开发公司内模拟软件系统的运行环境下的一种验收测试。
    参考答案:α测试

    27(1分)____________的依据是软件规格说明书。
    参考答案:验收测试

    28(1分)(判断)单元测试通常由开发人员进行。 ( )
    参考答案:对

    29(1分)(判断)测试应从"大规模"开始,逐步转向"小规模"。 ( )
    参考答案:错

    30(1分)(判断)负载测试是验证要检验的系统的能力最高能达到什么程度。 ( )
    参考答案:错

    31(1分)(判断)为了快速完成集成测试,采用一次性集成方式是适宜的。 ( )
    参考答案:错

    32(1分)(判断)验收测试是站在用户角度的测试。 ( )
    参考答案:对

    33(1分)(判断)自底向上集成需要测试员编写桩模块。 ( )
    参考答案:错

    34(1分)(判断)β测试是集成测试的一种。 ( )
    参考答案:错

    35(1分)(判断)如何看待软件产品内部的缺陷,开发者和用户的立场是一致的。 ( )
    参考答案:错

    36(13分)试针对如下程序代码设计测试脚本。

    public class GCD {   
    	public int getGCD(int x,int y) {
    		if(x<1||x>100) {   
    			System.out.println("数据超出范围!");        
    			return -1;    
    		}      
    		if(y<1||y>100) {   
    			System.out.println("数据超出范围!");      
    			return -1;        
    		}      
    		int max,min,result = 1;      
    		if(x>=y) {  
    			max = x;         
    			min = y;     
    		}      
    		else {  
    			max = y;         
    			min = x;     
    		}      
    		for(int n=1;n<=min;n++) {   
    			if(min%n==0&&max%n==0) {       
    				if(n>result)              
    					result = n;
    			}     
    		}      
    		System.out.println("因数:"+result);      
    		return result;
    	}
    }
    

    参考答案:

    (1)设计测试脚本,对GCD类的getGCD方法实现语句覆盖测试。

    public class GCD {   
    	public void testDemo_yuju(){
      		int test1=getGCD(-1,100);
      		int test2=getGCD(2,1);
      		System.println.out(test1+ test2);
     	}
    	public int getGCD(int x,int y) {
      		if(x<1||x>100) {   
       			System.out.println("数据超出范围!");        
       			return -1;    
      		}      
      		if(y<1||y>100) {   
       			System.out.println("数据超出范围!");      
       			return -1;        
      		}      
      		int max,min,result = 1;      
      		if(x>=y) {  
       			max = x;         
       			min = y;     
      		}      
      		else {  
       			max = y;         
       			min = x;     
      		}      
      		for(int n=1;n<=min;n++) {   
       			if(min%n==0&&max%n==0) {       
        				if(n>result)              
         				result = n;
       			}     
      		}      
      		System.out.println("因数:"+result);      
      		return result;
     	}
    }
    

    (2)设计测试脚本,对GCD类的getGCD方法实现条件覆盖测试。

    public class GCD {  
    	public void testDemo_tiaojian(){
    		int test1=getGCD(-1,-1);
    		int test2=getGCD(100,100);
    		int test3=getGCD(2,1);
    		int test4=getGCD(1,2);
    		System.println.out(test1+ test2+ test3+ test4);
    	}
     	public int getGCD(int x,int y) {
       		 if(x<1||x>100) {   
    		        System.out.println("数据超出范围!");        
    		        return -1;    
        		}      
        		if(y<1||y>100) {   
          			System.out.println("数据超出范围!");      
          			return -1;        
        		}      
        		int max,min,result = 1;      
        		if(x>=y) {  
          			max = x;         
          			min = y;     
        		}      
        		else {  
          			max = y;         
          			min = x;     
        		}      
        		for(int n=1;n<=min;n++) {   
          			if(min%n==0&&max%n==0) {       
            			if(n>result)              
             			result = n;
          			}     
        		}      
        		System.out.println("因数:"+result);      
        		return result;
      	}
    }
    

    37(8分)设有程序段ModuleA和 ModuleB如下,

    public class ModuleA {       
    	public static double operate(double x) {              
    		// 模块A内部进行处理              
    		// ...              
    		double r = x/2;              
    		// 调用模块B              
    		double y = ModuleB.operate(r);              
    		// 继续处理              
    		// ...              
    		return y;       
    	}
    } 
    public class ModuleB {       
    	public static double operate(double r) {              
    		// 模块B内部进行处理              
    		// ...              
    		double temp = Pi*r * r * r *4/3;              
    		// 继续处理              
    		// ...              
    		double y = temp;              
    		return y;       
    	}
    }
    

    参考答案:

    (1)阅读程序,请说明这两段程序合起来的功能是什么?

    输入直径,求圆球的体积
    

    (2)已知变量x一开始就有一定的误差△x,请分析 ModuleA.operate(x)执行完毕后,返回结果y的相对误差有多大?
    在这里插入图片描述

    38(6分) 设有两段代码ModuleA和 ModuleB如下,它们由不同的程序员开发。

    public class ModuleA {       
    	/*** 实现把 str1 中包含的 str2 去掉后的内容返回的功能        
    	* @param str1 字符串1
    	* @param str2 字符串2        
    	* @param 返回处理的结果        
    	*/       
    	public String operate(String str1, String str2) {              
    		return str1.replace(str2, "");       
    	}
    }
    
    public class ModuleB {       
    	private ModuleA moduleA;              
    	public void setModuleA(ModuleA moduleA) {              
    		this.moduleA = moduleA;       
    	}       
    	/**        
    	* 模块B的具体处理操作中,调用了模块A的接口        
    	*/       
    	public String operate(String str1, String str2) {              
    		// str1 待替换的目标串       
    		// str2 原串              
    		return moduleA.operate(str1, str2);       
    	}
    }  
    

    参考答案:
    (1)试分析对这两段代码进行集成测试时会出现什么问题?

    ModuleB的目标是将str2中包含str1的字符串替换(去除),而ModuleA提供的接口是将str1中包含str2的字符串替换或删除
    两者接口颠倒,将会出现字符串替换错乱的问题
    

    (2)试设计两个测试数据,一个能发现这一问题,另一个则不能发现这一问题。
    在这里插入图片描述

    39(7分)某连锁机构网站有注册账号5万个,平均1天大约有12000个用户要访问该系统,用户一般在7点——22点使用该系统,在一天的时间内,用户使用系统的平均时长约为0.5小时。假设用户登录访问该系统符合泊松分布,为进行并发测试,请估算系统的平均并发用户数C_avg和并发用户峰值数C_max。

    参考答案:

    系统的平均并发用户数C_avg=nL/T=12000*0.5/(22-7)=400
    并发用户峰值数C_max~=400+3*400^1/2=460
    

    6 白盒测试

    6.1 面向对象测试

    以下哪句话是不正确的( )?
    A.测试过的软件就没有缺陷
    B.测试的目的是尽可能多的发现程序中的缺陷
    C.成功的测试在于发现了迄今尚未发现的缺陷
    D.测试是为了验证程序是否符合需求
    正确答案:A

    6.2 单元测试

    1单选(1分)封装这一特征简化了对对象的使用,但同时也给测试结构的()、测试路径的选取、测试数据的生成等带来了困难。
    A.分析1.00/1.00B.定义C.合成D.提取
    正确答案:A

    2单选(1分)通过继承机制,子类可以继承父类的特点和功能,这一特征为( )的扩散提供了途径。
    A.缺陷1.00/1.00B.代码C.数据D.消息
    正确答案:A

    3单选(1分)如果父类带有缺陷,派生出的( )也会带有缺陷。继承使代码的重用率得到了提高,但同时也使缺陷的传播几率增加。
    A.函数B.代码C.子类1.00/1.00D.软件
    正确答案:C

    4单选(1分)面向对象软件测试是根据面向对象的软件开发过程结合面向对象的特点提出的。它不包括:
    A.对象封装测试1.00/1.00B.类测试技术C.对象交互测试技术D.分析与设计模型测试技术
    正确答案:A

    5单选(1分)应该在软件的其它部分使用该类之前来执行对类的测试。防止因未经测试的类被使用而导致( )。
    A.执行失败B.代码出错C.缺陷传导和扩散1.00/1.00D.测试异常
    正确答案:C

    6.3 课后作业

    习题六

    1(1分)以下哪句话是不正确的:
    A、测试过的软件就没有缺陷
    B、测试的目的是尽可能多的发现程序中的缺陷
    C、成功的测试在于发现了迄今尚未发现的缺陷
    D、测试是为了验证程序是否符合需求
    正确答案:A

    2(1分)下列项目中不属于测试文档的是 ( )
    A、测试计划 B、测试用例 C、 被测程序 D、测试报告
    正确答案:C

    3(1分)软件测试管理不包括: ( )
    A、测试团队管理 B、缺陷管理 C、软件需求管理 D、测试用例管理
    正确答案:C

    4(1分)软件测试风险管理包含( )和风险控制两方面内容。
    A、风险排序 B、风险识别 C、风险评估 D、风险分析
    正确答案:C

    5(1分)编写测试计划的目的不包括( )
    A、使测试工作顺利进行
    B、使项目参与人员沟通更舒畅
    C、使测试工作更加系统化
    D、使测试内容更少,完成更快
    正确答案:D

    6(1分)下面哪项内容不包含在测试计划文档中? ( )
    A. 测试策略 B. 测试用例 C. 测试时间安排 D. 测试标准
    正确答案:B

    7(2分)软件测试项目的生命周期包括测试需求分析、_________、_________、测试开发、测试执行、评估(或总结)等阶段。
    正确答案:测试计划 测试设计

    8(2分) 软件测试中,________描述测试的整体方案,________描述依据测试用例找出的问题。
    正确答案:测试计划 缺陷报告

    9(1分)________________________就是以测试项目为管理对象,通过一个临时性的专门的测试组织,运用专门的软件测试知识、技能、工具和方法,对测试项目进行计划、组织、执行和控制,并在时间成本、软件测试质量等方面进行分析和管理活动。
    正确答案:测试项目管理

    10(1分)软件测试文档为测试项目的组织、规划和管理提供了一个____________。
    正确答案:规范化的架构

    11(1分)(判断)测试人员要坚持原则,缺陷未完全修复坚决不予通过。 ( )
    正确答案:错

    12(1分)(判断)在软件测试中, 预设输出结果是检验待测系统在特定执行下是否正确的方法。 ( )
    正确答案:对

    13(1分)(判断)发现缺陷越多的模块隐藏的缺陷可能也越少。 ( )
    正确答案:对

    14(10分)什么是软件测试文档,测试项目中,主要的测试文档有哪些?
    正确答案:

    软件测试文档(Testing Documentation)记录和描述了整个测试流程,它是整个测试活动中非常重要的文件。测试过程实施所必备的核心文档是:测试计划、测试用例和软件测试报告。
    主要的测试文档有:1、软件测试计划 2、软件测试说明 3、软件测试报告
    

    15(10分)软件测试工作和软件开发工作相比,有哪些特点。
    正确答案:

    软件测试的目标在于,以最小的工作量和成本,尽可能多地发现软件系统中存在的各种错误和缺陷,以确保软件系统的正确性和可靠性。其主要特点是:
    (1) 软件测试的开销大。按照 Boehm 的统计,软件测试的开销大约占总成本的 30% ~ 50% 。 
    (2) 不能进行“穷举”测试。只有将所有可能的情况都测试到,才有可能检查出所有的错误,但这是不可能的。
    (3) 软件测试难度大。既然不能进行 “穷举”测试,又要查出尽可能多的错误,随着软件的规模和复杂度不断增加,软件测试工作的难度越来越大。 测试也是一种开发活动,但鉴于软件测试的以上特点,它比其他软件开发活动更加复杂、困难和重要,且无论怎样强调它的重要性都不过分。
    

    16(6分)试分析测试用例为什么需要更新?
    参考答案:

    第一,存在较多冗余的测试用例,在测试执行过程中执行此类用例浪费时间而且没有价值;  
    第二,存在较多与当前系统实现不一致的用例,此类用例严重误导测试执行人员,并容易造成新加入项目的测试人员对系统理解的混乱;  
    第三,存在一些重复的测试用例,此类用例的反复执行虽然可能可以确保某一功能实现的正确性,但确可能造成严重的资源浪费,特别是当此类功能并非系统的主要功能时这样的时间浪费在项目时间非常紧迫的情况下是非常不值得的。  
    虽然一再要求测试人员及时更新测试用例,一再强调测试用例的重要性,但仍存在大量的测试用例未能得到有效的维护。
    

    7 自动化测试

    7.1 自动化测试概述

    下列( )不是软件自动化测试的优点。
    A.速度快、效率高
    B.准确度和精确度高
    C.能提高测试的质量
    D.能充分测试软件
    正确答案:D

    7.2 自动化黑盒测试

    过JUnit提供的API可以编写出测试结果明确、可重用的单元测试( )
    A.计划B.脚本C.数据D.方案
    正确答案:B

    7.3 单元测试

    1单选(1分)( )可以让并不熟悉脚本语言的软件测试人员也可以方便的得到测试脚本。
    A.录制技术 1.00/1.00B.数据验证点技术C.数据驱动技术 D.回放技术
    正确答案:A

    2单选(1分)在自动化黑盒测试工具中,通过录制来得到( ),可以减少工作量。
    A.测试文件 B.测试脚本 1.00/1.00C.测试数据D.测试设计
    正确答案:B

    3单选(1分)自动化黑盒测试工具中,脚本录制好后,只要执行脚本,就可以把测试过程重做一遍,这被称为( )。
    A.录制B.回放 1.00/1.00C.复制 D.重播
    正确答案:B

    4单选(1分)在自动化黑盒测试工具中,通过录制来得到( ),可以减少工作量。
    A.测试文件 B.测试设计 C.测试脚本1.00/1.00D.测试数据
    正确答案:C

    5单选(1分)关于自动化测试局限性的描述,以下描述错误的是( )。
    A.自动测试不能提高测试覆盖率
    B.自动测试比手工测试发现的缺陷少
    C.自动化测试不能取代手工测试
    D.自动化测试对测试设计依赖性极大
    正确答案:B

    7.4 课后作业

    1(1分)对软件文档的要求不包括( )。
    A、完整性 B、美观性 C、一致性 D、易理解性。
    正确答案:B

    2(1分)软件设计阶段的质量控制主要采取的方式是( )。
    A、评审 B、白盒测试 C、黑盒测试 D、动态测试
    正确答案:A

    3(1分)以下不属于软件评审内容的是( )。
    A、管理评审 B、技术评审 C、文档评审 D、人员评审
    正确答案:D

    4(1分)以下不是评审工具的是( )。
    A、Gerrit B、Jupiter C、JaCoCo D、SourceMonitor
    正确答案:C

    5(1分)评审会议结束后,应当整理得到________作为存档材料。
    参考答案:评审表单

    6(2分)对评审会议发现的问题和缺陷要进行分析和跟踪,有的缺陷将________,有的缺陷则必须________。
    正确答案:被有条件的接受 修正

    7(3分)验收评审的内容主要是:开发的软件系统是否已达到________________规定的各项技术指标;________是否完整、正确;________是否齐全,是否符合有关标准等。
    正确答案:软件需求说明书 使用手册 文档

    8(1分)按照 IEEE 的定义,________是软件开发组之外的人员或小组,对软件需求、设计或代码,进行详细检查的一种正式评价方法。
    正确答案:评审

    9(1分)除软件测试之外,________是另一种软件质量控制和软件质量保证的有效方法。
    正确答案:评审

    10(2分)大中型软件的质量更多的取决于________和________质量,而不仅仅是编码质量。
    正确答案:分析 设计(不确定)

    11(1分)正式评审一般以___________的形式进行。
    参考答案:会议

    12(1分)(判断)技术评审既是一种技术手段,也是一种质量管理手段。 ( )
    正确答案:对

    13(1分)(判断)详细设计评审是所有的评审活动中最难的一个。 ( )
    正确答案:错 需求

    14(1分)(判断)评审的主要目标在于检测错误、核对与标准的偏离。 ( )
    正确答案:对

    15(1分)(判断)数据库设计一般要求遵循4NF。 ( )
    正确答案:错

    16(1分)(判断)应选择那些最复杂和最危险的部分进行评审。 ( )
    正确答案:对

    17(1分)(判断)应该将发现缺陷的工作推后,最后来处理,这样效率高。 ( )
    正确答案:错

    18(8分)什么是软件评审,主要的分阶段软件评审活动有哪些?
    参考答案:

    软件评审是对软件元素或者项目状态的一种评估手段,以确定其是否与计划的结果保持一致,并使其得到改进。 
    主要的分阶段软件评审活动有管理评审、技术评审、文档评审和流程评审。
    

    19(12分)试分析通过评审可以有哪些收效?
    参考答案:

    1提高项目的生产率。这是由于早期发现了错误,因而减少了返工时间,还可能减少测试时间
    2改善软件的质量。
    3在评审过程中,使开发团队的其他成员更熟悉产品和开发过
    程。
    4通过评审,标志着软件开发的一个阶段的完成。
    5生产出更容易维护的软件。主要原因是:对于被评审的软件,评审者必须是非常熟悉的;同时,在评审过程中,一定会产生并利用很多证明文档,于是评审就迫使开发者产生出许多有用的文档,而这些文档如果不是因为评审,则在整个项目期间可能都不会生产。此外,评审过程也将增加对所开发软件的理解。
    

    9 软件质量与质量保证

    9.1 软件错误及分类

    软件测试是按照特定的规程,( )的过程。
    A.发现软件错误B.说明程序正确C.证明程序没有错误D.设计并运行测试用例
    正确答案:A

    9.2 程序中隐藏错误数量估计

    采用Hyman分别测试法,两个测试员同时互相独立地对同一程序的两个副本测试了 3 天时间,如果两人发现的缺陷重合度低,则( )。
    A.说明软件中尚未发现的缺陷多
    B.说明软件中尚未发现的缺陷少
    C.说明两名测试员工作都很不尽责
    D.说明两名测试员工作都很尽责
    正确答案:A

    9.3 软件质量

    软件验证和确认是保证软件质量的重要措施,它的实施应该针对( )
    A.程序编写阶段
    B.软件开发的所有阶段
    C.软件调试阶段
    D.软件设计阶段
    正确答案:B

    9.4 软件质量模型

    McCall 质量模型使用 3 种视角来定义和识别软件产品的质量,其中不包括的是( )。
    A.产品修正B.产品转移C.产品运行D.产品设计
    正确答案:D

    9.5 软件质量管理

    软件确认就是要证实我们是不是制造了正确的产品,要保证( )。
    A.程序代码正确B.设计方案正确C.做的东西正确D.做的过程正确
    正确答案:C

    9.6 软件质量管理体系

    CMMI中文全称为( )
    A.软件能力成熟度模型
    B.软件能力成熟度模型集成
    C.质量管理体系
    D.软件工程研究所
    正确答案:B

    9.7 单元测试

    1单选(1分)软件验证和确认是保证软件质量的重要措施,它的实施应该针对( )
    A.软件开发的所有阶段 1.00/1.00
    B.软件调试阶段
    C.程序编写阶段
    D.软件设计阶段
    正确答案:A

    2单选(1分)软件的六大质量特性包括( )。
    ①功能性、可靠性 ②可用性、效率
    ③稳定性、可移植 ④多语言性、可扩展性
    A.①②③ 1.00/1.00B.①②④C.①③④ D.②③④
    正确答案:A

    3单选(1分)软件可靠性是指在指定的条件下使用时,软件产品维持规定的性能级别的能力,其子特性( )是指在软件发生故障或者违反指定接口的情况下,软件产品维持规定的性能级别的能力。
    A.可靠性依从性B.易恢复性 C.容错性 1.00/1.00D.成熟性
    正确答案:C

    4单选(1分)对Web网站进行的测试中,属于功能测试的是 ( )
    A.链接测试 1.00/1.00B.连接速度测试 C.平台测试D.安全性测试
    正确答案:A

    5单选(1分)CMMI中文全称为( )。
    A.软件能力成熟度模型集成 1.00/1.00B.软件工程研究所C.软件能力成熟度模型 D.质量管理体系
    正确答案:A

    10 软件测试组织和管理

    10.1 人员和资源组织

    软件测试人员的工作职责不包括:( )
    A.制定测试计划
    B.设计测试用例
    C.执行测试过程
    D.对软件缺陷进行修复
    正确答案:D

    10.2 过程和进度管理

    下列各项中( )不是一个测试计划所应包含的内容。
    A.测试资源、进度安排
    B.测试预期输出
    C.测试范围
    D.测试策略
    正确答案:B

    10.3 文档、用例和缺陷管理

    文档测试不包括测试文档的( )。
    A.完整性B.美观性C.一致性D.易理解性。
    正确答案:B

    10.4 单元测试

    1单选(1分)软件测试人员的工作职责不包括:( )
    A.设计测试用例
    B.执行测试过程
    C.制定测试计划
    D.对软件缺陷进行修复
    正确答案:D

    2单选(1分)软件质量保证与测试人员需要的的基本素质有( )
    A.计算机专业技能
    B.行业知识
    C.以上都是1.00/1.00
    D.测试专业技能
    正确答案:C

    3单选(1分)软件测试是按照特定的规程,( )的过程。
    A.证明程序没有错误
    B.设计并运行测试用例
    C.说明程序正确
    D.发现软件错误
    正确答案:D

    4单选(1分)( )是对要执行的软件测试及测试的结果进行描述、定义、规定和报告的任何书面或图示信息。
    A.软件测试脚本
    B.软件测试文档
    C.软件测试用例
    D.软件测试结果
    正确答案:B

    5单选(1分)缺陷跟踪就是要确保每个被发现的缺陷最终都能够被( ),而不是不了了之 。
    A.隐藏B.改正C.发现D.关闭
    正确答案:D

    10.5 课后作业

    1(1分)
    软件质量保证与测试人员需要的的基本素质有( )
    A、计算机专业技能 B、测试专业技能 C、行业知识 D、以上都是
    参考答案:D

    2(1分)CMM中文全称为( )
    A、软件能力成熟度模型
    B、软件能力成熟度模型集成
    C、质量管理体系
    D、软件工程研究所
    参考答案:A

    3(1分)CMM将软件组织的软件能力成熟度描述为( )
    A、二级 B、三级 C、四级 D、五级
    参考答案:D

    4(1分)软件的六大质量特性包括( )。
    ①功能性、可靠性 ②可用性、效率 ③稳定性、可移植 ④多语言性、可扩展性
    A、①②③ B、②③④ C、①③④ D、①②④
    参考答案:A

    5(1分)软件验证和确认是保证软件质量的重要措施,它的实施应该针对( )
    A、程序编写阶段 B、软件开发的所有阶段
    C、软件调试阶段 D、软件设计阶段
    参考答案:B

    6(3分)软件缺陷按严重程度被分为6个等级,分别是:_________、_________、_________、一般错误、较小错误、测试建议。
    参考答案:严重错误 主要错误 次要错误

    7(1分)软件对属于各种质量因素的需求的符合性是由____________来测量的。
    参考答案:软件质量度量

    8(1分)Burnstein博士提出了________,它描述了测试过程,是软件测试得到良好计划和控制的基础。
    参考答案:​Test Maturity Model(TMM即软件能力成熟度模型)

    9(2分)按照时间点来区分,软件质量特性度量有两类_________和_________。
    参考答案:预测型 验收型

    10(2分)CMM内容包含初始级、_________、_________、可重复级和可优化级五个等级。
    参考答案:定义级 定量管理级

    11(3分)McCall模型划分了_________、_________、_________三个纬度的11个软件质量因素。
    参考答案:软件运行 软件转移 软件修改

    12(1分)_________是指软件产品中能满足给定需求的性质和特性的总体。
    参考答案:软件质量

    13(1分)(判断)软件质量保证的独特性是由软件产品不同于其他制造产品的本质决定的。( )
    参考答案:对

    14(1分)(判断)TMM 分解为3个级别,在最高级中,测试不是行为,而是一种自觉的约束,不用太多的测试投入,即可产生低风险的软件。( )
    参考答案:对

    15(1分)(判断)CMMI并不包括CMM,更加适用于企业的过程改进实施。( )
    参考答案:错

    16(1分)(判断)只有客户才会有兴趣透彻定义软件需求以确保他约定的软件产品的质量。( )
    参考答案:错

    17(16分)某软件公司为某电影院设计开发了一款票务系统,包括票务管理、账号管理、在线购票、统计分析等功能,该软件计划长期使用,部分模块将用于其他类似软件,软件在使用时应能接入数字化城市平台。试结合软件质量模型分析应从哪些特性来分析评价这一软件的质量。
    参考答案:
    在这里插入图片描述

    11 本科目完结

    展开全文
  • NIIT博睿软件工程师第四学期软件质量保证与测试
  • 软件质量保证与测试英文论文,其中包含测试过程,测试用例源码,最后的截图
  • 软件质量0 目录9 软件质量质量保证9.3 软件质量9.3.1 课堂重点9.3.2 测试与作业10 下一章 0 目录 9 软件质量质量保证 9.3 软件质量 9.3.1 课堂重点 9.3.2 测试与作业 软件验证和确认...

    慕课金陵科技学院.软件质量保证与测试.第九章.软件质量与质量保证.软件质量

    0 目录

    9 软件质量与质量保证

    9.3 软件质量

    9.3.1 课堂重点

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    9.3.2 测试与作业

    软件验证和确认是保证软件质量的重要措施,它的实施应该针对( )
    A.程序编写阶段
    B.软件开发的所有阶段
    C.软件调试阶段
    D.软件设计阶段
    正确答案:B

    10 下一章

    博客地址:

    展开全文
  • 软件质量和测试的背景1.1 软件特征与软件工程1.1.1 软件分类1.1.2 层次化...测试与可靠性概述1.3.2软件测试的定义1.3.3软件测试方法1.3.4软件测试自动化1.3.5软件缺陷的修复费用1.4软件质量保证与测试人才的特点1.4.1...
  • 软件质量保证与测试整理_2019年终版 辛苦整理出来的,考后补充了一部分,基本涵盖2019年所讲的PPT内容。 原版PPT是英文,这里使用OCR进行识别和翻译整理而成,可用作开卷考试的查找资料使用。 ——wefree
  • 软件质量保证软件测试教学大纲,含课程实践教学部分
  • 适合打印 黑白
  • BTSplus_frontend 2021软件质量保障与测试前端
  • 总目录0 总目录1 绪论1.1 软件质量保证与测试的产生发展1.2 软件缺陷,软件错误,软件故障1.3 软件质量保证与测试的意义,原则和挑战1.4 单元测试1.5 课后作业2 软件测试策略2.1 软件测试的模型,过程和生命周期2.2 ...
  • 软件质量保证与测试PDF参考文档,可打印出来考前复习,知识点罗列齐全,效果不错
  • 包含 软件质量保证与测试 8-15章节PDF,方便打印出来学习,考试必备

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 132,185
精华内容 52,874
关键字:

软件质量保障与测试