软件测试技术复习题(1004)

合集下载

软件测试期末复习题

软件测试期末复习题

软件测试期末复习题软件测试是确保软件产品满足规定需求并具有可接受质量的过程。

期末复习时,理解软件测试的基本概念、测试方法、测试类型和测试过程是至关重要的。

以下是一些可能的期末复习题,供同学们参考:1. 软件测试的目的是什么?- 软件测试的目的是验证软件产品的功能和非功能需求是否符合用户和业务的期望,同时识别软件中的缺陷,以提高软件的可靠性和可用性。

2. 列举软件测试的几种类型。

- 单元测试、集成测试、系统测试、验收测试、性能测试、安全测试、回归测试等。

3. 解释什么是黑盒测试和白盒测试。

- 黑盒测试是一种测试方法,测试者不需要了解程序内部的逻辑或代码,只根据需求说明书来测试软件的功能。

- 白盒测试则需要测试者了解程序的内部结构和代码,测试程序的内部逻辑是否正确。

4. 描述软件测试的生命周期。

- 软件测试生命周期通常包括需求分析、测试计划、测试设计、测试执行、缺陷管理、测试报告和测试结束。

5. 解释什么是缺陷生命周期。

- 缺陷生命周期是指从缺陷被发现到被修复并验证的整个过程,包括缺陷的报告、确认、分配、修复、验证和关闭。

6. 列举至少三种常见的软件缺陷类型。

- 功能缺陷、性能缺陷、用户界面(UI)缺陷、安全缺陷等。

7. 描述软件测试计划应包含哪些内容。

- 测试目的、测试范围、测试方法、资源分配、时间安排、风险评估、测试入口和出口准则等。

8. 解释什么是回归测试,为什么它在软件开发中很重要?- 回归测试是为了确保软件在修改后仍然满足原有需求而进行的测试。

它很重要,因为修改可能会引入新的错误,影响到软件的其他部分。

9. 列举至少两种软件测试工具,并简要说明它们的用途。

- 例如,JIRA用于缺陷跟踪和管理,Selenium用于自动化Web应用的测试。

10. 解释什么是敏捷测试,它与传统测试有何不同?- 敏捷测试是一种适应性强、快速响应变化的测试方法,它与传统测试的主要区别在于更强调测试与开发团队的紧密协作,以及测试活动在整个开发周期中的持续进行。

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

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

软件测试复习题(附答案)一、单选题(共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. 请简述什么是软件测试技术?软件测试技术是指通过使用各种工具、方法和技巧来评估和改进软件产品质量的过程。

它涵盖了测试计划、测试用例设计、测试执行、缺陷跟踪和缺陷管理等方面,旨在发现并纠正软件系统中的错误,提高系统的可靠性和稳定性。

第二题2. 软件测试技术的重要性是什么?软件测试技术在软件开发生命周期中起着至关重要的作用。

其重要性体现在以下几个方面:第一,通过测试可以帮助发现软件系统中的潜在错误和缺陷,保证软件系统的质量。

第二,软件测试技术可以帮助开发团队确定测试目标,制定测试计划,并确保测试用例的完整性和覆盖率。

第三,软件测试技术可以提高软件系统的可靠性、可用性和性能。

通过不断的测试和优化,可以确保软件系统的稳定性和高性能。

第三题3. 请列举几种常见的软件测试技术。

常见的软件测试技术包括:第一,白盒测试。

白盒测试是一种基于代码的测试方法,通过检查和验证软件系统的内部结构和实现来进行测试。

第二,黑盒测试。

黑盒测试是一种基于需求和功能的测试方法,不考虑软件系统的内部实现,只关注输出结果是否符合预期。

第三,灰盒测试。

灰盒测试结合了白盒测试和黑盒测试的优点,既关注软件系统的内部结构,也关注用户的需求和功能。

第四,性能测试。

性能测试用于评估软件系统的性能和稳定性,包括负载测试、压力测试、稳定性测试等。

第五,安全测试。

安全测试用于评估软件系统的安全性,包括漏洞扫描、渗透测试、身份验证等。

第四题4. 请简述测试用例设计的方法和步骤。

测试用例设计是软件测试过程中的关键步骤,用于验证软件系统是否按照预期执行。

下面是测试用例设计的一般步骤:第一,确定测试目标。

根据软件需求和预期功能,确定需要进行测试的目标。

第二,收集测试数据。

根据测试目标,收集测试所需的数据,包括输入数据和预期输出数据。

第三,设计测试用例。

根据收集到的测试数据,设计测试用例,确保覆盖到各种情况和可能发生的错误。

软件测试复习题(含部分答案

软件测试复习题(含部分答案

学号: 姓名: 座位号: 班级: 第一考官:姚庚梅 开课系部:计算机系装 订 线 内 请 不 要 答 题一、判断题:1、 软件测试的惟一目的就是为了发现软件的错误。

(× )2、 在进行黑盒测试时,主要的测试依据是软件需求。

( √ )3、 功能测试的主要目的是测试软件防止非法入侵能力。

( × )4、 软件测试人员可以对概要设计说明书进行白盒测试。

( × )5、 验收测试只由开发公司的测试人员来实施的。

( × )6、 自动化测试工具可以部分代替手工测试。

( √ )7、 软件错误是指软件产品中存在的导致期望的运行结果和实际运行结果间出现差异的一系列问题。

( √ )8、 负载测试的目的是为了测试软件系统的最大负载。

( × ) 9、 软件测试必须等到所有缺陷均修复才能结束。

( × ) 10、 软件测试人员必须对需求规格说明书进行白盒测试。

( × ) 11、 项目编码前,软件测试人员不需要介入项目测试。

( × ) 12、 从是否关注软件内部结构与算法,可以将软件测试分为静态测试和动态测试。

( × ) 13、软件测试人员一旦发现软件缺陷,主要以口头方式通知软件开发人员。

( × )14、 性能测试的目的是保证软件的功能符合软件需求。

( × ) 15、 发现错误多的模块,残留在模块中的错误也多。

( √ )16、 软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。

( × )17、 软件测试只能发现错误,但不能保证测试后的软件没有错误。

( √ ) 18、 测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。

( × )二、单选题:1、 软件测试的目的( B )A 、发现程序中的所有错误B 、尽可能多地发现程序中的错误C 、证明程序是正确的D 、调试程序2、 一个程序中所含有的路径数与 ( A )有着直接的关系 A 、程序的复杂程度 B 、程序语句行数C 、程序模块数D 、程序指令执行时间3、 用户界面测试要遵循一些原则,下面哪一个是需要遵循的原则( A ) A 、易用性原则 B 、完整性原则 C 、创新性原则 D 、复杂性原则4、 功能测试的目的是( B )A 、保证用户方便使用B 、保证软件的功能符合软件需求C 、保证系统没有错误D 、保证软件的性能符合设计的要求5、 软件错误产生的原因有多种多样,以下哪个不属于其中 ( B ) A 、需求分析不完善 B 、没有测试计划C 、软件设计错误D 、程序员编码过程中引入错误6、在软件测试V 模型中,概要设计对应的测试是(C ) A 系统测试 B 单元测试 C 集成测试 D 模块测试7、在软件生命周期的哪一个阶段,软件缺陷修复费用最低(A ) A 需求分析 B 设计 C 编码 D 产品发布8、单元测试中用来模拟被测模块调用者模块是(C ) A 父模块 B 子模块 C 驱动模块 D 桩模块9、不属于单元测试的内容是(D )A 模块接口测试B 局部数据结构测试C 路径测试D 用户界面测试10、下列项目中不属于测试文档的是( C )A 测试计划B 测试用例C 程序流程图D 测试报告11、在自底向上测试中,要编写称为(B )的模块来测验正在测试的模块 A 测试存根 B 测试驱动模块 C 桩模块 D 底层模块12、软件测试方法中的( D )属于静态测试方法 A 黑盒法 B 路径覆盖 C 错误推测 D 人工检测13、软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试(D ) A 结构合理性 B 软件外部功能 C 程序正确性 D 程序内部逻辑三、问答题:名词解释:软件测试、测试用例、软件缺陷、自动化测试、黑盒测试、白盒测试、功能测试、性能测试、压力测试、单元测试、集成测试、系统测试、回归测试装订线内请不要答题四、设计题:1、 某程序规定:员工信息录入包含员工编码、员工姓名、员工性别。

软件开发与设计实例分析复习题(1004)

软件开发与设计实例分析复习题(1004)

软件开发与设计实例分析复习题(1004)一、基本要求1、软件项目开发概述(1)软件工程的三段论:软件开发过程、软件项目管理、软件过程改进(2)需求分析建模的基本方法:结构化方法、面向对象方法(3)概要设计原则和设计模型(4)软件体系结构:客户机/服务器结构(C/S)、浏览器/服务器结构(B/S)、应用程序框架结构(MVC)、组件体系结构(5)编码方法和规范:结构化编码方法、面向对象编码方法、编码标准和规范(6)测试方法和过程(7)软件项目的提交和维护(8)软件文档规范(9)软件开发环境与工具2、基于结构化方法的C/S架构软件项目实例(1)项目立项:立项背景、可行性分析、开发计划(2)需求分析:需求调研、数据分析、功能定义、需求分析文档(3)概要设计:开发环境、架构设计、数据设计、界面设计、模块设计、概要设计文档(4)详细设计:接口定义、数据结构定义、算法设计、详细设计文档(5)编码实现:编程实现、编码文档(6)系统测试:测试方案、测试过程、测试评估3、基于面向对象方法的C/S架构软件项目实例(1)项目立项:立项背景、可行性分析、开发计划(2)需求分析:需求调研、数据分析、功能定义、需求分析文档(3)概要设计:开发环境、架构设计、数据设计、界面设计、模块设计、概要设计文档(4)详细设计:接口/类定义、数据结构定义、算法设计、详细设计文档(5)编码实现:编程实现、编码文档(6)系统测试:测试方案、测试过程、测试评估4、基于B/S架构的网站开发软件项目实例(1)项目立项:立项背景、可行性分析、开发计划(2)需求分析:需求调研、数据分析、功能定义、需求分析文档(3)概要设计:开发环境、架构设计、数据设计、界面设计、模块设计、概要设计文档(4)详细设计:接口/类定义、数据结构定义、算法设计、详细设计文档(5)编码实现:编程实现、编码文档(6)系统测试:测试方案、测试过程、测试评估二、基本概念1、软件工程的三段论是指软件项目管理、软件项目开发和软件过程改进。

软件测试技术考试试题

软件测试技术考试试题

软件测试技术考试试题一、选择题(每题 2 分,共 40 分)1、以下哪项不是软件测试的目的?()A 发现软件中的错误B 证明软件的正确性C 评估软件的质量D 改进软件的开发过程2、黑盒测试方法不包括以下哪种?()A 等价类划分B 边界值分析C 控制流图D 因果图3、以下关于测试用例的说法,错误的是()A 测试用例是为特定的测试目的而设计的一组测试输入、执行条件和预期结果B 测试用例可以重复使用C 测试用例越多越好D 测试用例应该具有明确的目标和期望的结果4、软件测试的阶段不包括()A 单元测试B 集成测试C 系统测试D 代码审查5、以下哪种测试类型主要关注软件的性能?()A 功能测试B 性能测试C 安全测试D 兼容性测试6、边界值分析法通常选取的边界值是()A 正好等于B 刚刚大于C 刚刚小于D 以上都是7、等价类划分法将输入数据划分为()A 有效等价类和无效等价类B 合理等价类和不合理等价类C 确定等价类和不确定等价类D 正确等价类和错误等价类8、以下哪种测试方法可以用于测试系统在异常情况下的行为?()A 压力测试B 恢复测试C 冒烟测试D 随机测试9、白盒测试主要用于测试()A 程序的内部逻辑结构B 程序的功能C 程序的用户界面D 程序的性能10、以下关于自动化测试的说法,错误的是()A 可以提高测试效率B 可以减少人为错误C 适用于所有类型的测试D 前期需要较大的投入11、以下哪种工具常用于性能测试?()A JUnitB LoadRunnerC SeleniumD Git12、软件测试计划的主要内容不包括()A 测试范围B 测试策略C 测试环境D 详细的测试用例13、以下哪种情况可能导致测试的不充分?()A 测试时间不足B 测试人员经验不足C 测试用例覆盖不全面D 以上都是14、以下关于回归测试的说法,正确的是()A 只需要对修改的部分进行测试B 是在软件修改后进行的测试C 不需要重新测试之前通过的功能D 可以使用原有的测试用例15、以下哪种测试类型关注软件的安全性?()A 安全测试B 可用性测试C 安装测试D 文档测试16、以下关于测试环境的说法,错误的是()A 应该与生产环境尽可能相似B 可以使用虚拟机搭建C 不需要考虑网络环境D 硬件配置要满足测试需求17、以下哪种测试方法可以发现内存泄漏的问题?()A 静态测试B 动态测试C 代码审查D 性能测试18、以下关于兼容性测试的说法,错误的是()A 包括硬件兼容性测试和软件兼容性测试B 不需要考虑不同操作系统的版本C 要考虑浏览器的兼容性D 要考虑移动设备的兼容性19、以下哪种测试可以在软件开发的早期进行?()A 系统测试B 集成测试C 单元测试D 验收测试20、以下关于软件缺陷的说法,错误的是()A 软件缺陷是软件中存在的问题B 软件缺陷一定导致软件无法运行C 软件缺陷需要被跟踪和管理D 软件缺陷的严重程度可以不同二、填空题(每题 2 分,共 20 分)1、软件测试的原则包括尽早测试、________、________ 、避免测试自己的程序等。

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

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

《软件测试》期末复习试题及答案阶段测试一一. 单选题(共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.软件测试的目的是(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)。

软件测试技术复习题(1004)一、基本要求1、软件测试概述(1)软件可靠性问题、软件缺陷与故障、软件缺陷产生的原因(2)软件测试基本概念(3)软件开发过程(4)软件测试过程、软件开发与软件测试的关系(5)软件质量与软件质量管理的概念2、软件测试策略与过程(1)软件测试的复杂性概念(2)软件测试方法与策略:静态测试与动态测试、黑盒测试与白盒测试(3)软件测试过程:单元测试、集成测试、确认测试、系统测试、验收测试(4)面向对象的软件测试(5)软件调试的概念、软件测试与调试的关系3、功能(黑盒)测试及其用例设计(1)黑盒测试法的概念(2)三角形问题、NextDate 函数问题(3)等价类划分法(4)边界值分析法(5)因果图法(6)决策表法(7)黑盒测试应用案例4、结构(白盒)测试及其用例设计(1)白盒测试法的概念(2)控制流图、环形复杂度、图矩阵(3)覆盖测试:函数覆盖、条件覆盖、路径覆盖、面向对象的覆盖(4)路径测试:基本路径测试方法、循环测试方法(5)白盒测试应用案例5、软件测试实际应用(1)客户机/ 服务器系统的软件测试:客户机/服务器系统的结构测试、网站测试(2)面向对象的软件测试:面向对象的软件测试模型、基于类的测试(3)图形用户界面测试:窗体测试、菜单测试、数据项测试(4)实时系统性能测试(5)场景法应用案例6、软件测试管理(1)软件测试组织管理(2)软件测试计划和过程管理:制定测试计划、确定测试过程、测试结果分析(3)软件测试文档管理7、软件自动化测试(1)软件自动化测试基础:自动化测试概念、自动化测试脚本、自动化测试生存周期(2)软件自动化测试工具:白盒测试工具、黑盒测试工具二、基本概念1、软件测试是在软件投入运行前,对软件需求分析、设计规格说明和编码实现的最终审查。

软件测试所涉及的关键问题包括四个方面:测试人员、测试内容、测试时间和测试方法。

2、软件测试过程中需要三类输入:软件配置、测试配置和测试工具。

软件测试所涉及的关键问题包括四个方面:测试人员、测试内容、(测试时间)和测试方法。

3、IEEE 将软件可靠性定义为:系统在特定环境下,在给定的时间内无故障运行的概率。

根据软件测试的定义,软件测试是为了发现错误而执行程序的过程。

4、基于Web 的系统测试不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器端的显示是否合适。

5、面向对象单元测试针对程序内部具体单一功能的模块进行测试。

从测试的角度来看,继承提供一种机制,通过这种机制,潜在的错误能够从一个类传递到它的派生类。

6、使用白盒测试工具所发现的故障可以定位到代码级。

7、等价类是输入域的某个子集合,而所有等价类的并集就是整个输入域。

因此,等价类的划分原则应该体现完备性和无冗余性。

8、基于Web 的系统测试重要的是,从最终用户的角度进行安全性和可用性测试9、有效的Web压力测试系统的关键条件中,量级指的是尽量使单独的操作进行高强度的使用,增加操作的量级。

10、对OOP的测试重点集中在类功能的实现和相应的面向对象程序架构上,主要表现之一为数据成员是否满足数据封装的要求。

11、面向对象技术的特点给测试带来的新问题具体表现有多态和动态绑定增加了系统运行中可能的执行路径,而且给面向对象软件带来了严重的不确定性。

对OOP勺测试重点集中在类功能的实现和相应的面向对象程序架构上。

12、测试大纲是软件测试的依据,包括测试项目、测试步骤、测试完成的标准。

13、动态测试工具需要实际运行被测系统,并设置断点,向代码生成的(可执行)文件中插入一些监测代码。

14、C/S 体系结构的软件测试通常是从单个客户端开始,然后再逐步集成客户端、服务器和网络系统进行集成测试,最后进行系统的整体测试。

15、静态测试分析主要集中在需求文档、设计文档以及程序结构方面。

16、对Web网站测试所采用的测试方法与策略除了黑盒测试、白盒测试、静态测试和动态测试都有可能用到外,还会包括面向对象测试技术的运用。

17、软件可靠性是对软件在设计、开发以及所预定的环境下具有能力的置信度的一个度量,是衡量软件质量的主要参数之一。

18、按照软件测试的策略和过程分类,软件测试可分为单元测试、集成测试、系统测试、验证测试和确认测试。

在软件测试中,对已测试过的模块进行组装,目的在于检验与软件设计相关的程序结构问题的测试称为集成测试。

19、实时系统测试的一般步骤:任务测试、行为测试、任务间测试和系统测试。

20、为了达到1 00 %的基于状态的上下文覆盖,例行程序必须在每个适当的上下文内被执行。

三、简答题1、应用条件/ 判定覆盖进行路径测试可能发现的错误。

针对判定和条件覆盖,测试用例可能发现如下错误:(1)不同数据类型的比较;(2)不正确的逻辑操作或优先级;(3)应当相等的地方由于精确度的错误而不能相等;(4)不正确的判定或不正确的变量;(5)不正确的或不存在的循环终止;(6)当遇到分支循环时不能退出;不适当地修改循环变量。

2、简述软件测试报告的内容。

软件测试报告是软件测试过程中最重要的文档,它的内容包括:(1)记录问题发生的环境(2)记录问题的再现步骤(3)记录问题性质的说明(4)记录问题的处理进程3、测试过程中必需的基本测试活动有哪些。

(1)拟定软件测试计划(2)编制软件测试大纲(3)设计和生成测试用例(4)实施测试(5)生成软件测试报告4、确定软件测试策略时的参考原则。

(1)在任何情况下都必须采用边界值分析法。

这种方法设计出的测试用例发现程序错误的能力最强。

(2)必要时采用等价类划分法补充测试用例。

(3)采用错误推断法再追加测试用例。

(4)对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度。

如果没有达到要求的覆盖标准,则应当再补充更多的测试用例。

(5)如果程序的功能说明中含有输入条件的组合情况,则应一开始就选用因果图法。

5、简述软件自动化测试中的脚本技术脚本是一组测试工具执行的指令集合,也是计算机程序的一种形式。

脚本可以通过录制测试的操作产生,然后再做修改,这样可以减少脚本编程的工作量。

当然,也可以直接用脚本语言编写脚本。

脚本技术可以分为以下几类:线性脚本——是录制手工执行的测试用例得到的脚本。

结构化脚本——类似于结构化程序设计,具有各种逻辑结构(顺序、分支、循环),而且具有函数调用功能。

共享脚本——是指某个脚本可被多个测试用例使用,即脚本语言允许一个脚本调用另一个脚本。

数据驱动脚本——将测试输入存储在独立的数据文件中。

关键字驱动脚本——是数据驱动脚本的逻辑扩展。

6、在单元测试时,如果模块不是独立的程序,需要设置一些辅助测试模块。

简述两种辅助测试模块的作用。

驱动模块:用来模拟被测试模块的上一级模块,相当于被测模块的主程序。

它接收数据,将相关数据传送给被测模块,启动被测模块,并打印出相应的结果。

桩模块:用来模拟被测模块工作过程中所调用的模块。

它们一般只进行很少的数据处理。

7、简述由面向对象技术的特点给测试带来的新问题。

封装把数据及对数据的操作封装在一起,限制了对象属性对外的透明性和外界对它的操作权限,在某种程度上避免了对数据的非法操作,有效防止了故障的扩散。

但同时,封装机制也给测试数据的生成、测试路径的选取以及测试结构的分析带来了困难。

继承实现了共享父类中定义的数据和操作,同时也可定义新的特征。

子类是在新的环境中存在,所以父类的正确性不能保证子类的正确性。

继承使代码的重用率得到了提高,但同时也使故障的传播几率增加。

多态和动态绑定增加了系统运行中可能的执行路径,而且给面向对象软件带来了严重的不确定性,给测试覆盖率的活动带来新的困难。

8、Web压力测试的意义及有效的压力测试系统的关键条件。

(1)Web压力测试的意义压力测试是系统测试的一部分,通过应用很大的工作负载来使软件超负荷运转,其目的是要弄清楚被测试的Web服务是不是不仅能做预期应能做的事,而且在被施加了某些高强度压力的情况下仍能继续正常运行。

如果压力测试通过对软件保持高强度的使用(不超过性能统计数字确定的限制)能够有效执行,那么它就经常能够发现许多其它测试无法发现的隐蔽错误。

(2)有效的压力测试系统的关键条件①重复:就是一遍又一遍地执行某个操作或功能。

②并发:就是在同一时间内执行多个操作。

③量级:尽量使单独的操作进行高强度的使用,增加操作的量级。

④随机变化:随机使用前面条件中的无数变化形式,就能够在每次测试运行时应用许多不同的代码路径。

9、如何根据等价类的划分确定测试用例。

(1)首先为等价类表中的每一个等价类分别规定一个唯一的编号。

(2)设计一个新的测试用例,使它能够尽量覆盖尚未覆盖的有效等价类。

重复这个步骤,直到所有的有效等价类均被测试用例所覆盖。

(3)设计一个新的测试用例,使它仅覆盖一个尚未覆盖的无效等价类。

重复这一步骤,直到所有的无效等价类均被测试用例所覆盖。

10、简述软件自动化测试中的“捕获-回放”技术(1)捕获:将用户每一步操作都记录下来。

这种记录的方式有两种:程序用户界面的像素坐标或程序显示对象(窗口、按钮、滚动条等)的位置,以及相对应的操作、状态变化或是属性变化。

所有的记录转换为一种脚本语言所描述的过程,以模拟用户的操作。

(2)回放:将脚本语言所描述的过程转换为屏幕上的操作,然后将被测系统的输出记录下来同预先给定的标准结果比较。

这可以大大减轻黑盒测试的工作量,在迭代开发的过程中,能够很好地进行回归测试。

四、分析题1、阅读下面的问题说明:现在的软件系统几乎都是用事件触发来控制程序流程的。

事件触发时的情景便形成了场景,而同一事件不用的触发顺序和处理结果就形成了事件流。

事件流分为基本流和备选流,基本流是经过测试用例的从开始到结束的最简单、无差错的路径,备选流可以从基本流开始,也可以从另外的备选流开始,在某个特定条件下执行。

根据问题的描述确定程序的基本流和备选流,然后由基本流和备选流形成不同的场景,对每一个场景生成相应的测试用例。

这就是应用场景法进行测试用例设计的基本思想。

下面是对某ATM机应用系统的存款操作的基本流和备选流的描述。

备选流:试求:(1)设计场景(基本流用字母A表示,备选流用题干中描述的相应字母表示)。

场景格式示例如下:(2) 设计测试用例场景矩阵测试用例矩阵格式示例如下:(3) 假设本系统开发人员在开发过程中通过测试发现了20个错误,独立的测试组通过上述测试用例发现了80个软件错误,系统在上线后,用户反馈了10个错误,请计算缺陷探测率(DDP)。

(1)设计场景(2)设计测试用例场景矩阵(3)计算缺陷探测率(DDP)DDP=Bugstester ( Bugstester+ Bugscustomer ) = (20+80) (20+80+10) =90%( 0.9 ) 其中,Bugstester为测试者发现的错误数;Bugscustomer为客户发现并反馈技术支持人员进行修复的错误数。

相关文档
最新文档