软件测试课堂练习_第1章--第3章

合集下载

《软件测试技术》 刘文乐 天秋成 编著 课后答案 第1章 软件测试概述课后答案

《软件测试技术》 刘文乐 天秋成 编著  课后答案 第1章  软件测试概述课后答案

第1章软件测试概述1.5 习题一、名词解释软件缺陷:又被叫做Bug。

所谓软件缺陷,即为计算机软件或程序中存在的某种破坏软件正常运行的问题、错误,或者隐藏的功能缺陷。

软件测试:利用人工或者自动手段按照测试方案和流程对产品进行功能和性能测试的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。

它是识别开发的(中间或最终)软件(整体或部分)的正确度、完全度和质量的过程。

V模型:描述基本的开发过程和测试行为,其价值在于它非常明确地标明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系。

W模型:W模型由两个V字型模型组成,分别代表测试与开发过程,明确表示出了测试与开发的并行关系。

X模型:X模型的左边,描述的是针对单独程序片段所进行的相互分离的编码和测试,此后将进行频繁的交接,通过集成最终合成为可执行的程序。

右上半部分,这些可执行程序还需要进行测试。

已通过集成测试的成品可以封版,并提交给用户,也可以作为更大规模和范围内集成的一部分。

多根并行的曲线表示变更可以在各个部分发生。

H模型:在H模型中,软件测试过程的活动完全独立,贯穿于整个产品的周期,与其他流程并发地进行,某个测试点准备就绪时,就可以从测试准备阶段进入到测试执行阶段。

软件测试可以尽早的进行,并且可以根据被测对象的不同而分层次进行。

二、填空题1、软件的测试不仅仅是对程序的测试,而且软件的测试应贯穿于整个软件生命周期。

在软件定义阶段产生的可行性报告、项目实施计划、软件需求说明书或系统功能说明书,在软件开发阶段产生的概要设计说明书、详细设计说明书,以及源程序等都是软件测试的对象。

2、软件测试的目的,就是检验软件是否满足任务书或合同等规定的软件质量要求。

简言之,测试的目的应该是满足用户。

3、软件测试模型,主要包括V模型、W模型、X模型、H模型和前置模型。

4、按软件生存周期划分,软件测试可分为:软件测试可分为:定义阶段测试、开发阶段测试、运行阶段测试、维护阶段测试。

软件测试技术基础课后习题答案

软件测试技术基础课后习题答案
自底向上集成可以尽早的验证底层模块的行为;提高了测试效率; 一般不需要桩模块;容易对错误进行定位。但是直到最后一个模块加进 去之后才能看到整个系统的框架;驱动模块的设计工作量大;不能及时 发现高层模块设计上的错误。
混合集成具有自顶向下和自底向上两种集成策略的优点,但是在被 集成之前,中间层不能尽早得到充分的测试。
9.集成测试有哪些不同的集成方法?简述不同方法的特点。
解:集成测试通常有一次性集成、自顶向下集成、自底向上集成和混合 集成4种集成方法。
一次性集成方法需要的测试用例数目少,测试方法简单、易行。但 是由于不可避免存在模块间接口、全局数据结构等方面的问题,所以一 次运行成功的可能性不大;如果一次集成的模块数量多,集成测试后可 能会出现大量的错误,给程序的错误定位与修改带来很大的麻烦;即使 集成测试通过,也会遗漏很多错误进入系统测试。
10.系统测试主要包括哪些内容?
解:系统测试主要包括强度测试、性能测试、恢复测试、安全测试、可 靠性测试、安装测试、容量测试和文档测试。
11.验收测试是由谁完成的?通常包含哪些过程?
解:验收测试是以用户为主的测试,软件开发人员和QA(质量保证) 人员也应参加。通常包含α测试和β测试过程。
12.分析比较面向对象的软件测试与传统的软件测试的异同。
桩模块用以模拟被测模块工作过程中所调用的子模块。 函数驱动模块: void main( ) { int x,y,z; scanf(“%d%d”,&x,&y); z=divide(x,y); pr什么时候进行回归测试?
解:回归测试就是重新运行现有测试用例测试原有功能,以便确定变更 是否达到了预期的目的,检查变更是否损害了原有的正常功能。每当软 件发生变化时就应进行回归测试。

软件测试课件第3章软件测试方法1静态测试与动态测试

软件测试课件第3章软件测试方法1静态测试与动态测试
标识符、常量等,组合这些基本因素就可以得到软件的基本信息,包括:标号交 叉引用表,变量交叉引用表,子程序、宏和函数表,等价表,常数表。
通过这些软件的基本信息可以实现以下功能:
1. 直接从表中查出说明和使用错误,如循环层次表、标号交叉引用表和变量 交叉引用表;
2. 为用户提供辅助信息,如子程序、宏和函数表、等价表和常数表;
3.1 静态测试技术概述
• 代码检查
➢ 走查 走查与代码审查基本相同,其过程分为两步: 1. 把材料先发给走查小组的每个成员,认真研究程序,然后开会; 2. 开会的程序与代码审查不同,不是简单的读程序和对照错误检查表进行 检查,而是让与会者充当计算机,即首先由测试组成员为所测程序准备 一批有代表性的测试用例,提交给走查小组,走查小组开会扮演计算机 角色,让测试用例沿程序逻辑运行一遍,随时记录程序的跟踪,供分析 和讨论用。
单个变量是否只做单个用途? 单行是否只有单个功能?(不要使用;进行多行合并) 单个函数是否执行了单个功能并与其命名相符? 操作符++和——操作符的应用是否复合规范?
单个函数不超过规定行数? 缩进层数是否不超过规定? 是否已经消除了所有警告? 常数变量是否声明为final? 对象使用前是否进行了检查? 局部对象变量使用后是否被复位为NULL? 对数组的访问是否是安全的?(合法的index取值为[0, MAX_SIZE-1])。
3.1 静态测试技术概述
检查变量的交叉引用表,重点检查未说明变量和违反了类型规定的变量,还要对照源程序, 逐个检查变量的引用、变量的使用序列、临时变量在某条路径上的重写情况,局部变量、全 局变量与特权变量的使用;
检查标号的交叉引用表,验证所有标号的正确性,检查所有标号的命名是否正确,转向指定 位置的标号是否正确;

淮海工学院软件测试技术课堂练习题(考)

淮海工学院软件测试技术课堂练习题(考)

第一章选择题1. Myers在1979年提出了一个重要观点,即软件测试的目的是为了( B )。

(A)证明程序正确(B)查找程序错误(C)改正程序错误(D)验证程序无错误2. 以下哪个选项不属于软件缺陷( D )。

(A)软件没有实现产品规格说明所要求的功能(B)软件中出现了产品规格说明不应该出现的功能(C)软件实现了产品规格说明中的部分功能(D)软件实现了产品规格说明所要求的功能但因受性能限制而未考虑可移植性问题3. 下列关于缺陷产生原因的叙述中,不属于技术问题的是( A )。

(A)文档错误,内容不正确或拼写错误(B)系统结构不合理(C)语法错误(D)接口传递不匹配,导致模块集成出现问题4. 对于软件测试分类,下列各项都是按照不同阶段来进行的划分,除了( C )。

(A)单元测试(B)集成测试(C)黑盒测试(D)系统测试5. 软件产品必须首先提供用户所需要的( D )。

(A)性能(B)人机界面(C)可靠性(D)功能简答题1. 简述软件测试与软件开发的关系。

2. 回忆自己用过的所有软件中遇到的bug,请写出软件名及其bug的表现形式。

3. 写写你对于国内市场对软件测试工程师的需求及能力要求的看法。

4. 如果你想从事软件测试工作,你怎样做职业准备,应具备怎样的素质。

第六章1. 评审方法按照正式化程度逐渐增强的是( D )。

(A)临时评审、走查、同行评审、轮查、会议评审(B)临时评审、走查、轮查、同行评审、会议评审(C)会议评审、小组评审、走查、同行评审、临时评审(D)临时评审、轮查、同行评审、走查、会议评审2. 对于软件需求分析报告和核心模块的代码,一般最好采用( C )。

(A)临时评审(B)同行评审(C)会议评审(D)轮查第七章1.测试程序时不在机器上直接运行程序,而是采用人工检查或计算机辅助静态分析的手段检查程序,这种测试称为_______。

(10分)A.白盒测试B.黑盒测试C.静态测试D.动态测试2. 评审方法按照正式化程度逐渐增强的是_____。

软件测试技术 章节测验答案 作业答案 慕课答案 作业一二答案 UOOC优课 课后练习 深圳大学慕课

软件测试技术 章节测验答案 作业答案  慕课答案 作业一二答案 UOOC优课 课后练习 深圳大学慕课

第一章课前摸底测验一、单选题 (共50.00分)1.软件是包括()的完整集合。

①程序②数据③相关设备④相关文档A.①②B.①②③C.①②④D.①②③④正确答案:C2.以下不属于软件开发模式的是()。

A.抽象工厂模式B.瀑布模式C.迭代模式D.敏捷模式正确答案:A3.以下不属于软件开发过程中重要环节的是()。

A.需求分析B.软件估价C.软件设计D.软件编码正确答案:B4.一般而言,软件交付给最终用户的是()。

A.源代码文件B.目标代码文件C.可执行文件D.文档手册正确答案:C5.在软件生命周期的哪一个阶段,发现软件缺陷并进行弥补和修复的费用最高?()A.需求分析B.软件设计C.程序编码D.产品发布投入实际使用正确答案:D二、判断题 (共50.00分)1.软件的质量取决于程序编码环节,代码编写质量高的软件,质量一定高。

A.正确B.错误正确答案:B2.根据软件开发经验可知,通过检查代码能够很容易发现的问题,一定也能通过执行代码来很快发现。

A.正确B.错误正确答案:B3.程序员应当把注意力集中于多开发代码,代码中的问题等到后面发现了再处理也不迟。

A.正确B.错误正确答案:B4.软件质量取决于测试人员,只要他们严格把关,软件质量就会高。

A.正确B.错误正确答案:B5.对程序的源代码和可执行文件都可以进行测试。

A.正确B.错误正确答案:A第九章测验一一、单选题 (共75.00分)1.下列()不属于软件缺陷。

A.测试人员主观认为不合理的地方B.软件未达到产品说明书标明的功能C.软件出现了产品说明书指明不会出现的错误D.软件功能超出产品说明书指明范围正确答案:A2.软件测试是按照特定的规程,()的过程。

A.发现软件错误B.说明程序正确C.证明程序没有错误D.设计并运行测试用例正确答案:A3.经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现并改正的错误较多,则该模块中残存的错误数目与其他模块相比,通常应该()。

计算机软件技术基础教程(第二版)习题及答案

计算机软件技术基础教程(第二版)习题及答案

第1章习题部分答案1. 操作系统的发展分为那几个阶段?解:操作系统的发展经历了三个阶段:操作系统的酝酿阶段、操作系统的形成阶段、操作系统的理论化和标准化阶段。

2. 计算机软件技术开发系统包括那几个阶段?解:计算机软件开发系统的发展经历了四个阶段:机器语言阶段、汇编语言阶段、高级语言阶段、面向对象语言和可视化语言阶段。

3. 计算机软件技术的主要范畴是什么?解:计算机软件技术的主要范畴包括软件工程技术、程序设计技术、软件工具环境技术、系统软件技术、数据库技术、实时软件技术、网络软件技术、与实际工作相关的软件技术等八个领域的内容。

4. 从软件技术的发展现状来看有哪些值得我们注意的问题?解:从软件技术的发展现状来看有以下几个值得我们注意的问题:1)软件危机2)软件技术标准,软件版权和软件价值评估3)软件技术的基础研究。

1第2章习题部分答案1. 什么是软件危机?软件危机的表现有哪些?解:软件开发技术的进步为能满足发展的要求,在软件开发中遇到的问题找不到解决的方法,问题积累起来形成了尖锐的矛盾,导致了软件危机。

2. 软件危机产生的原因是什么?解:造成软件危机的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引起的。

1)软件规模越来越大,结构越来越复杂。

2)软件开发管理困难而复杂。

3)软件开发费用不断增加。

4)软件开发技术落后。

5)生产方式落后。

6)开发工具落后,生产率提高缓慢。

3. 常见的软件过程模型有哪些?解:常见的软件过程模型有瀑布模型、增量模型、演化过程模型、敏捷开发4. 如何对软件质量进行评价?解:软件质量的评价主要围绕可维护性、可靠性、可理解性和效率这几个方面进行。

2第3章习题部分答案1. 软件可行性研究的目的是什么?软件可行性研究的任务又是什么?解:软件可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。

可行性研究的任务首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制,把他们清楚地列举出来。

习题参考答案-软件测试技术(第2版)-谭凤-清华大学出版社

习题参考答案-软件测试技术(第2版)-谭凤-清华大学出版社

《软件测试技术》习题参考答案第1章软件测试基础一、判断题1、验证意味着确保软件正确无误地实现软件的需求,开发过程是沿着正确的方向进行。

(T )2、调试的目的是发现bug。

(F )3、软件缺陷主要来自产品说明书的编写和产品方案设计。

(T )4、在实际的软件测试工作中,不论采用什么方法,由于软件测试情况数量极其巨大,都不可能进行完全彻底的测试。

(T )5、测试人员可以不懂编程。

( F )二、选择题1、软件是程序和(B )的集合。

A、代码B、文档C、测试用例D、测试2、严重的软件缺陷的产生主要源自(A)。

A、需求B、设计C、编码D、测试3、Fixed的意思是指:( C )A、该BUG没有被修复,并且得到了测试人员的确认B、该BUG被拒绝了,并且得到了测试人员的确认C、该BUG被修复了,并且得到了测试人员的确认D、该BUG被关闭了,并且得到了测试人员的确认4、降低缺陷费用最有效的方法是(B )。

A、测试尽可能全面B、尽可能早的开始测试C、测试尽可能深入D、让用户进行测试5、以下不属于应用系统中的缺陷类型的是:( B )。

A、不恰当的需求解释B、用户指定的错误需求C、设计人员的习惯不好D、不正确的程序规格说明三、简答题1、请简述一条软件缺陷(或者叫Bug)记录都包含了哪些内容?2、请简述软件测试的定义?第2章软件测试类型一、判断题1、软件测试的目的是尽可能多的找出软件的缺陷。

( T )2、好的测试方案是极可能发现迄今为止尚未发现的错误。

(T )3、测试人员要坚持原则,缺陷未修复完坚决不予通过。

( F )4、负载测试是验证要检验的系统的能力最高能达到什么程度。

( F )5、V模型不能适应较大的需求变化。

( T )二、选择题1、测试环境中不包括的内容是( A )A、测试所需文档资料B、测试所需硬件环境C、测试所需软件环境D、测试所需网络环境2、某软件公司在招聘软件测试工程师时,应聘者甲向公司做如下保证:(1)经过自己测试的软件今后不会再出现问题(2)在工作中对所有程序员一视同仁,不会因为某个程序编写的程序发现的问题多,就重点审查该程序,以免不利于团结(3)承诺不需要其他人员,自己就可以独立进行测试工作(4)发扬咬定青山不放松的精神,不把所有问题都找出来,绝不罢休根据自己所学的软件测试知识,应聘者甲的保证( D )A、(1)(4)是正确的B、(2)是正确的C、都是正确的D、都是错误的3、用不同的方法可将软件测试分为白盒法和黑盒法,或者(C)和静态测试。

《软件测试》第三章 白盒测试方法

《软件测试》第三章 白盒测试方法

《软件测试》第三章白盒测试方法一、填空题1、语句覆盖的目的是测试程序中的代码是否被执行,它只测试代码中的执行语句。

2、判定覆盖的作用是使真假分支军被执行。

3、条件覆盖是指判定语句中的每个条件都要取真、假值各一次。

4、对于判定语句IF (a>1 AND c1、c1 AND c判断覆盖方法。

5、判定条件覆盖要求判定语句中所有条件取值的可能组合都至少出现一次。

6、在程序插桩法中,插入到程序中的代码称为探针。

二、判断题1、语句覆盖无法考虑分支组合情况。

(X )。

2、目标代码插桩需要重新编译、链接程序。

(√)。

3、语句覆盖可以测试程序中的逻辑错误。

(√)。

4、判定-条件覆盖没有考虑判定语句与条件判断的组合情况。

(X )。

5、对于源代码插桩,探针具有较好的通用性。

(√)。

三、单选题1、下列选项中,哪一项不属于逻辑覆盖?( D )。

A.语句覆盖B.条件覆盖C.判定覆盖D.判定-语句覆盖。

2、关于逻辑覆盖,下列说法中错误的是( C )。

A.语句覆盖的语句不包括空行、注释等。

B.相比于语句覆盖,判定覆盖考虑到了每个判定语句的取值情况。

C.条件覆盖考虑到了每个逻辑条件取值的所有组合情况。

— 1/2 —— 1/2 —D.在逻辑覆盖中,条件组合覆盖是覆盖率最大的测试方法。

3、关于程序插桩法,下列说法中错误的是( D )。

A.程序插桩法就是往被测程序中插入测试代码以达到测试目的的方法。

B. 程序插桩法可分为目标代码插桩法和源代码插桩。

C. 源代码插桩的程序需要重新编译、链接过程,单测试代码不参与编译、链接过程。

D. 目标代码插桩是往二进制程序中插入测试代码四、简答题1、请简述逻辑覆盖的几种方法及他们之间的区别。

答:6种。

语句覆盖(SC):设计足够多的测试用例,抄确保每条语句都被执行过。

判定覆盖(DC):设计足够多的测试用例,确保每个判定都分别取真值与假值。

条件覆盖(CC):设计足够多的测试用例,确保每个条件都分别取真值与假值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件测试课堂练习 第1章—第3章内容 章 第 章内容
课堂练习题: 课堂练习题:
1、什么事软件测? 2、简述软件测试的过程? 、简述软件测试的过程? 3、软件测试过程模型有哪些? 、软件测试过程模型有哪些? 4、软件测试环境有哪些基本成分? 、软件测试环境有哪些基本成分? 5、简述软件测试工具的分类,及各类工具完成的主要的测试功能? 、简述软件测试工具的分类,及各类工具完成的主要的测试功能? 6、黑盒子测试技术方法分为哪几种?简单说明每种方法的测试步骤? 、黑盒子测试技术方法分为哪几种?简单说明每种方法的测试步骤? 7、白盒子测试技术方法分为哪几种?简单说明每种方法的测试准则要求? 、白盒子测试技术方法分为哪几种?简单说明每种方法的测试准则要求? 8、什么是完整路径?什么是子路径?什么是覆盖路径? 、什么是完整路径?什么是子路径?什么是覆盖路径? 9、下面是一段简单的 语言程序, 语言程序, 、下面是一段简单的C语言程序 If (x>100 && y>500) then score=score+1 If (x>=1000 | | z>5000) then score=score+5 采用语句覆盖、判断覆盖、条件覆盖、判断/条件覆盖 条件覆盖、 采用语句覆盖、判断覆盖、条件覆盖、判断 条件覆盖、条件组合覆盖和路径覆盖 技术给出测试用例的设计。 技术给出测试用例的设计。 10、程序要求某个输入为 位正整数,试用黑盒子的等价类、边界值方法设计测试用 位正整数, 、程序要求某个输入为6位正整数 试用黑盒子的等价类、 例。
相关文档
最新文档