文档库 最新最全的文档下载
当前位置:文档库 › 软件测试技术 B卷 及参考答案..

软件测试技术 B卷 及参考答案..

软件测试技术 B卷 及参考答案..
软件测试技术 B卷 及参考答案..

一、单项选择题;共20小题,每小题1 分,满分20分;请将答案填入题后括号中。

1.软件测试的目的是( B )

(A)发现程序中的所有错误(B)尽可能多地发现程序中的错误

(C)证明程序是正确的 (D)调试程序

2. 下列___不属于测试原则的内容( D )

(A)软件测试是有风险的行为 (B)完全测试程序是不可能的

(C)测试无法显示潜伏的软件缺陷(D)找到的缺陷越多软件的缺陷就越少

3. 导致软件缺陷的最大原因是( A )

(A)编制说明书 (B)设计

(C)编码 (D)测试

4. 修复软件缺陷费用最高的是____阶段:( D )

(A)编制说明书 B)设计

(C) 编写代码(D)发布

5. 白盒测试是根据程序的__C__来设计测试用例,黑盒测试是根据软件的规格说明来设计测试用例。

(A)功能 (B)性能

(C)内部逻辑 (D)内部数据

6. 条件覆盖的目的是( A )

(A)使每个判定的所有可能的条件取值组合至少执行一次

(B)使程序中的每个判定至少都获得一次“真”值和“假”值。

(C)使程序中的每个判定中每个条件的可能值至少满足一次。

(D)使程序中的每个可执行语句至少执行一次。

7. 一个程序中所含有的路径数与____有着直接的关系。( A )

(A) 程序的复杂程度 (B) 程序语句行数

(C)程序模块数 (D)程序指令执行时间

8. 动态黑盒子测试:( D )

(A)直接测试底层功能、过程、子程序和库(B)可估算执行测试时代码量和具体代码

(C)从软件获得读取变量和状态信息的访问权(D)测试的是软件在使用过程中的实际行为

9. 在自低向上测试中,要编写称为___B_的模块来测验正在测试的模块。

(A) 测试存根(B) 测试驱动模块

(C)桩模块 (D) 底层模块

10. 下列___不是软件自动化测试的优点( D )

(A)速度快、效率高 (B)准确度和精确度高

(C)能提高测试的质量(D)能充分测试软件

11. 配置测试( C )

(A) 是指检查软件之间是否正确交互和共享信息 (B) 是交互适应性、实用性和有效性的集中体现

(C) 是指使用各种硬件来测试软件操作的过程 (D) 检查缺陷是否有效改正

12. 下列各项中___不是一个测试计划所应包含的内容( B )

(A)测试资源、进度安排(B)测试预期输出

(C)测试范围 (D)测试策略

13. 下列不属于正式审查的方式是( D )

(A)同事审查(B) 公开陈述(C) 检验(D) 编码标准和规范

14. 在没有产品说明书时使用____:( A )

(A)探索测试(B) 功能测试(C) 动态测试(D) 静态测试

15. 调试是( D )

(A)发现与预先定义的规格和标准不符合的问题

(B)发现软件错误征兆的过程

(C)有计划的、可重复的过程

(D)消除软件错误的过程

16. 在软件底层进行的测试称为( C )

(A) 系统测试 (B) 集成测试(C) 单元测试 (D) 功能测试

17. 在确定黑盒测试策略时,优先选用的方法是( B )

(A) 边界值分析法(B) 等价类划分

(C)错误推断法 (D)决策表方法

18. 下列___不属于软件缺陷( A )

(A) 测试人员主观认为不合理的地方

(B) 软件未达到产品说明书标明的功能

(C)软件出现了产品说明书指明不会出现的错误

(D)软件功能超出产品说明书指明范围

19. 产品发布后修复软件缺陷比项目开发早期这样做的费用要高_____ ( D )

(A)1~2倍 (B)10~20倍 (C)50倍(D)100倍或更高

20. _____把黑盒子测试和白盒子测试的界限打乱了。( A )

(A) 灰盒子测试(B)动态测试(C)静态测试(D)失败测试

二、填空题:共10小题20个空格,每个空格1分,满分20分;请将答案填入指定的空白处。

1. 软件缺陷产生的原因包括(编写说明书)、设计、(编写代码)以及其他原因。

2. 软件开发模式包括大棒模式)、边写边改模式、(流水模式)、螺旋模式。

3. 黑盒测试用例设计方法包括(等价类划分法)、(边界值分析法)以及因果图法,错误推测法等。

4. 测试过程中,(测试计划)用于描述测试的整体方案,(缺陷报告)描述依据测试案例找出的问题。

5. 传统的等价类划分测试的实现分两步进行,一是(划分等价类表)_,二是(设计相应的测试用例)。

6. 在兼容性测试中,(向前兼容)是指可以使用软件的以前版本,(向后兼容)是指可以使用软件的未来版本。

7. 测试工作就是进行输入、接受输出、检验结果,不深入代码细节,这样的测试方法称为(动态黑盒测试),在不执行代码的条件下有条理地仔细审查软件设计、体系结构和代码,从而找出软件缺陷的测试方法称为(静态白盒测试)。

8. 不需要修复软件缺陷的原因包括(没有时间)、不能算真正的软件缺陷、(风险太大)、不值得修复。

9. 白盒测试又称为(结构测试),黑盒测试又称为(功能测试)。

10. 动态测试的两个基本要素是(被测试程序)、(测试数据)。

三、判断题:共10小题,每小题1分,满分10分;请将答案以“√”、“×”形式填入题后括号中。

1. 白盒测试的条件覆盖标准强于判定覆盖。(×)

2. 验收测试是以最终用户为主的测试。(√)

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

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

5. 好的测试员不懈追求完美。(×)

6. 软件测试工具可以代替软件测试员。(×)

7. 最重要的用户界面要素是软件符合现行标准和规范。(√)

8. 自动化测试可能延误项目进度。(√)

9. 软件测试员可以对产品说明书进行白盒测试。(√)

10. 静态白盒测试可以找出遗漏之处和问题。(√)

四、名词解释;共5小题,每小题3分,满分15分

1.软件缺陷:(符合下列规则的叫软件缺陷):

1).软件未达到产品说明书的功能

2).软件出现了产品说明书指明不会出现的错误

3).软件功能超出产品说明书指明范围

4).软件未达到产品说明书虽未指出但应达到的目标

5).软件测试员认为难以理解、不易使用、运行速度缓慢、或者最终用户认为不好

2. 单元测试:单元测试是对软件设计的最小单元——模块进行正确性检验的测试工作,主要测试模块在语法、格式和逻辑上的错误。

3.白盒测试: 白盒测试也称为结构测试或逻辑驱动测试,前提是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的机构测试程序,检测程序中的每条通路是否都能够按预定要求正确工作,而不管产品的功能,主要用于软件验证。

4.回归测试: 指软件系统被修改或扩充(如系统功能增强或升级)后重新进行的测试,是为了保证对软件所做的修改没有引入新的错误而重复进行的测试。

5.等价类: 指某个输入域的子集合,在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。

五、简答题:共3小题,每小题5分,满分15分。

1. 什么是测试用例?为什么要设计测试用例?

所谓的测试用例就是将软件测试的行为活动,做一个科学化的组织归纳。

使用测试用例的好处主要体现在以下几个方面:

?在开始实施测试之前设计好测试用例,可以避免盲目测试并提高测试效率。

?测试用例的使用令软件测试的实施重点突出、目的明确。

?在软件版本更新后只需修正少部分的测试用例便可展开测试工作,降低工作强度、缩短项目周期。?功能模块的通用化和复用化使软件易于开发,而相对于功能模块的测试用例的通用化和复用化则会使软件测试易于开展,并随着测试用例的不断精化其效率也不断攀升

2. 简述增量式集成测试的自顶向下和自底向上两种测试方法。

自顶向下增量式测试的主要优点在于它可以自然地做到逐步求精,一开始便能让测试者看到系统的框架。它的主要缺点是需要提供被调用模拟子模块,被调用模拟子模块可能不能反映真实情况,因此测试有可能不充分。

3.分析单元测试和代码调试的区别。

表面上这两项技术很相似,因为它们都包括查看代码、

运行程序和处理软件缺陷的过程,但是它们的目标不同:

单元测试是为了发现软件缺陷,而代码调试的目标是修

复软件缺陷。在分离和查找软件缺陷原因时这两个过程

发生交叉。

六、:综合题:共1小题,每小题20分,满分20

分。

1.按要求给出下列程序的测试用例(要求写出必要的说

明):

(1)语句覆盖

(2)判定覆盖

(3)条件覆盖

(4)判定-条件覆盖

(5)条件组合覆盖

答:

图中共有4条路径:P1(ace)、P2(abd)、P3(abe)、P4(acd)。

1.P1正好满足语句覆盖的条件。可以设计如下的输入数据:

A=2,B=0,x=4

2.测试用例如果能够测试路径P1(ace)和P2(abd),就可以满足判定覆盖要求。可以设计如下两组输入数据:

A=2,B=0,x=4

A=1,B=1,x=1

3.条件:A>1,B=0,A=2,x>1。需要有足够的测试用例使得上述四个条件都能有满足和不满足的情况。以下这两组输入数据能满足这些要求:

A=2,B=0,x=4

A=1,B=1,x=1

4.判定/条件覆盖

A=2,B=0,x=4

A=1,B=1,x=1

5.可能的条件组合:

(1)A>1,B=0(2)A>1,B≠0(3)A≤1,B=0(4)A≤1,B≠0(5)A=2,x>1 (6)A=2,x≤1(7)A≠2,x>1(8)A≠2,x≤1

相应的输入数据:

A=2,B=0,x=4 满足(1)和(5)

A=2,B=1,x=1 满足(2)和(6)

A=1,B=0,x=2 满足(3)和(7)

A=1,B=1,x=1 满足(4)和(8)

软件测试工程师高级视频教程

软件测试工程师高级视频教程 什么是软件测试?为什么有这么多人选择学习软件测试?软件测试有超强的预判能力,拯救用户,拯救软件,避免未来软件被用户无情卸载的命运。2018年软件测试将延续近两年火爆的发展势头,千锋出品的软件测试工程师高级视频教程,将为广大软件测试爱好者的高效自学提供可能。 下面就来说说千锋教育软件测试教学团队全新录制的5章视频教程都涵盖哪些内容。 软件测试工程师高级视频教程:https://www.wendangku.net/doc/ad17934910.html,/s/1dFm5wbR 软件测试工程师高级视频教程第一章:在本章中,老王详细向学生们介绍了软件测试的历史,软件测试的目的,软件测试的对象、软件测试概念等具体知识。

让学生一方面逐步熟悉软件测试的一些经典理论和思想,另一方面结合知识概念从根本的角度理解软件测试是什么,以及软件测试的重要性。 软件测试工程师高级视频教程第二章:本章课程主要是向学生讲解软件测试过程模型。但为了让学生们更好的理解这个知识点,我们需要先去了解什么是软件的生命周期,软件生命周期都包含哪些具体活动?什么是软件开发的过程,软件开发团队的工作过程模型都有哪些。只有充分了解了这些内容,我们在学习软件测试过程模型的时候,才会更好的掌握相关的知识与概念。 软件测试工程师高级视频教程第三章:本集视频主要介绍了从开发角度划分的5类测试方法 软件测试工程师高级视频教程第四章:本章主要讲解软件测试计划的内容。测试计划是一切软件测试活动开始前的准备工作,通过对测试计划的分析与编写,实际是让相关参与者提前了解未来软件测试过程中应该重点关注的各项内容。所以所有软件测试工程师必备的一项技能。 软件测试工程师高级视频教程第五章:本章的内容主要带领各位同学去一起关注了解关于需求的各项知识。需求是测试工程师工作过程中的行动纲领,需要测什么,为什么需要测都是与需求中的具体要求相关。同时,需求过程中引入缺陷的几率很大,而发现后修复其的成本却很低,所以了解需求,掌握需求分析方法,熟练编写测试需求也是软件测试工程师的重要技能之一。 目前软件测试人才的缺口在30万人以上,IT行业国内外巨头正在加紧争夺软件测试人才,华为一次抛出50名软件测试人员的招聘大单,而联想、用友、

《软件测试基础》期末试卷及参考答案

期末试卷先锋学院2011-2012学年第二学期 《软件测试技术》试题库答案 一、填空题(每空2分,共15空,分数为30分) 1、判定覆盖设计足够多的测试用例,使得被测试程序中的每个判断的“真”、“假”分支至少被执行一次。 2、黑盒测试的具体技术方法等价类划分法、边界值分析法、决策表法、因果图法。 3、黑盒测试又称之为功能测试。 4、等价类划分有两种不同的情况:有效等价类和无效等价类。 5、根据覆盖目标的不同,逻辑覆盖又可分为:语句覆盖,判定覆盖,条件覆盖,路径覆盖条件组合覆盖,判断/条件覆盖。 6、根据软件生命周期中的定义,可以把自动化测试工具划分3大类白盒 测试工具、黑盒测试工具和测试管理工具。 7、软件测试是为发现程序中的错误而执行程序的过程。 8、测试用例是由测试输入数据和预期的输出数据两部分组成。 9、白盒测试又称为结构测试,可以分为静态测试和动态测试两大类。 10、软件是包括程序、数据、相关文档的完整集合。 11、边界值分析法属于黑盒测试。 12、单元测试是以详细设计说明书为指导,测试源程序代码。 13、集成测试以概要设计说明书指导,测试软件结构。 14、确认测试以需求分析说明书为指导。 15、软件开发的基本过程需求分析、概要设计、详细设计、编码、测试、 维护。

16、代码复审属于静态测试,不实际运行程序。 17、集成测试把模块组成成系统的测试方式:一次性集成测试和。 18、黑盒测试有两种基本方法,即:通过测试和失败测试。增量式集成测试 20、Junit是一个开放源代码的 java 测试框架,用于编写和运行可重复的测试。 21、在Junit中3.8中testXXX()测试方法必须满足几个条件:public , void 和无方法参数。 二、选择题(每题3分,共10题,分数为30分) 1. 下列哪一项不是白盒测试?(C) A.单元测试 B.集成测试 C.系统测试 D.回归测试 2. 属于黑盒测试的方法?(C) A.基于基本路径 B.控制流 C.基于用户需求测试 D.逻辑覆盖3.在Assert类中断言对象为NULL是_____。(C) A.assertEquals B.assertTrue C.assertNull D.fail 4.___________的目的是对最终软件系统进行全面的测试确保最终软件系统产品满足需求。(A) A.系统测试B.集成测试 C.单元测试D.功能测试 5.在Assert类中断言两个对象相等是_____。(A) A.assertEquals B.assertTrue C.assertSame D.fail 6.有一组测试用例使得每一个被测试用例的分支覆盖至少被执行一次,它满足的覆盖标准___________。(B)

软件测试基础课程—慕课网

软件测试基础教程——慕课网 第一课时:软件测试概要 一、软件测试的定义 软件测试是使用人工或自动的手段来运行或测量软件系统的过程,以检验软件系统是否满足规定的要求,并找出与预期结果之间的差异。 二、软件测试的测试的对象 需求、概要设计、详细设计、运行环境、可运行程序、源代码。(软件测试≠程序测试) 三、软测的五大要素及两大目标 五大要素: 质量(最为核心),人员(决定因素),技术(实现手段)【测试技术,方法,测试工具】,资源【测试所需的硬件,网络环境,测试生命周期,测试时间】,流程(测试标准)【测试计划,测试执行,报告】目标:提升测试覆盖率及测试效率 四、软件测试所遵循的原则: 1.测试显示缺陷的存在,但不能证明系统不存在缺陷。 2.穷尽测试是不可能的,应设定及时终止的条件。 3.测试应该尽早进行。

4.缺陷具备群集特性。越是发现问题多的模块,就是我们重点关注的对象。 5.测试的杀虫剂悖论。在测试当中,我们采用同样的测试用例、同样的测试方法,多次、重复的来测试某一个模块,那最后我们就不能够再发现新的缺陷。所以我们的测试用例和测试方法应该不定期的评审和修改,并增加不同的测试方法或测试用例来测试软件或系统的不同部分,从而发现更多的缺陷。 6.测试的二八原则。就是我们应该把80%的时间或资源用在20%的重点模块上,重点测试这款软件中20%的重要模块,来达到我们测试的效率和资源配置最佳的比例。 7.测试活动依赖于测试背景。 第二课时:软件测试阶段、手段、模式 一、软件测试阶段 软件测试按测试阶段来分类:单元测试、集成测试、系统测试、验收测试。 (一)单元测试 是各个阶段测试的基础,是对软件中的最小可测试单元进行检查和验证。单元是人为规定的可测试的最小的模块。(java面向对象语言来说,最小可测试单元是每一个类) 单元测试是对代码进行测试 测试框架:junit针对JAVA nunit针对.net phpunit针对PHP CppUnit针对C++ 原则: 1.尽可能的保证各个测试用例是互相独立的。尽量避免使用依赖的方法。编写一个模拟的方法来取代使用外部依赖。 2.一般由代码的开发人员来实施,用以检验所开发的代码功能符合自己的设计要求。 益处: 1.能尽早发现缺陷。 2.有利于重构。 3.简化集成。 4.文档。简化文档作用 5.用于设计。 限制: 1.不可能覆盖所有的执行路径,所以不可能保证捕捉到所有路径的错误。 2.每一行代码,一般需要3~5行测试代码才能完成单元测试。所以存在投入和产出的一个平衡。 (二)集成测试(偏于技术角度验证)

《软件测试技术》期末复习题+参考答案

单项选择题:共20小题,每小题1 分,满分20分;请将答案填入题后括号中。 1.在软件生命周期的哪一个阶段,软件缺陷修复费用最低( A ) (A)需求分析(编制产品说明书)(B)设计 (C) 编码(D)产品发布 2.单元测试中用来模拟被测模块调用者的模块是( C ) (A) 父模块(B)子模块 (C)驱动模块(D)桩模块 3.为了提高测试的效率,应该( D ) (A)随机地选取测试数据; (B)取一切可能的输入数据作为测试数据; (C)在完成编码以后制定软件的测试计划; (D)选择发现错误可能性大的数据作为测试数据。 4.侧重于观察资源耗尽情况下的软件表现的系统测试被称为( B ) (A)强度测试(B)压力测试 (C) 容量测试(D)性能测试 5.必须要求用户参与的测试阶段是( D ) (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.下列项目中不属于测试文档的是( C ) (A)测试计划(B)测试用例 (C) 程序流程图(D)测试报告 11.几乎没有产品计划、进度安排和正规的开发过程的软件开发模式是( B ) (A)大棒模式(B)边写边改模式 (C) 瀑布模式(D)快速原型开发模式 12.如果某测试用例集实现了某软件的路径覆盖,那么它一定同时实现了该软件的( A ) (A)判定覆盖(B)条件覆盖 (C) 判定/条件覆盖(D)组合覆盖 13.下列说法不正确的是( D ) (A)测试不能证明软件的正确性; (B)测试员需要良好的沟通技巧; (C)QA与testing属于一个层次的概念; (D)成功的测试是发现了错误的测试。 14.对Web网站进行的测试中,属于功能测试的是( B ) (A)连接速度测试(B)链接测试 (C)平台测试(D)安全性测试 15.在进行单元测试时,常用的方法是( B ) (A)采用黑盒测试,辅之以白盒测试; (B)采用白盒测试,辅之以黑盒测试; (C)只使用黑盒测试; (D)只使用白盒测试。

软件测试技术经典教程笔记(修).docx

第一章基础知识 1.1、软件 1)、软件=程序+文档 2)、分类 功能:系统+应用 架构:单机+C/S+B/S 用户:产品+项目 规模:小型+中型+大型 1.2、Bug 1)、类型一(广义上,软件生命周期,与用户需求不符的问题): 完全没有实现的功能 基本实现功能,但有功能上或性能上的问题 实现了用户不需要的功能 2)、类型二(测试执行阶段的问题) Defect---------Requirements&Design Error-----------Development Bug------------Testing Failure---------Post production 1.3、测试 1)、概念: 测试是为了检验实际的软件是否符合用户需求,所以不能为了发现错误而发现错误。使用人工或自动手段,来运行或测试某个系统的过程。 2)、测试环境:硬件+软件+网络 要求:真实(项目、产品)+干净+无毒+独立(测试与开发) 1.4、测试用例 测试用例=输入+输出+测试环境 便于团队交流,便于重复测试,便于跟踪统计,比纳与用户自测 开发生命周期 需求分析→概要设计→详细设计→编码→维护 测试生命周期 测试计划→测试设计→测试执行→测试评估 需求分析和测试计划完成后,根据《系统需求规格说明书》和软件原型(DEMO)写测试用例 1.5 其他 1)、测试人员素质要求:细心、耐心、信心、服务意识、团队合作意识、沟通能力 2)、如何成为优秀的测试工程师:1、不断学习充电2、阅读原版书籍3、阅读缺陷管理系 统中的缺陷报告4、阅读高手写的测试用例5、学习产品相关 的业务知识

1.6 软件测试的基本规则 1) Zero Bug 与Good Enough Good Enough原则:不充分测试是不负责任,过分的测试是一种资源浪费。 参考:*遗留bug不超过10个,严重的不超过5个 *测试用例执行率为100%,通过率为95% *单元测试,关键模块语句覆盖率达到100%,分支覆盖率达到85% 2) 不要视图穷举法 3) 开发人员不能既是运动员又是裁判员 4) 软件测试要尽早执行 一般情况下,软件80%的缺陷集中在20%的模块中。 7) 缺陷具有免疫性 缺陷具有免疫性,需要根据新版本修改维护测试用例,另外,有一个值得注意的经验:没修复3-4个bug,可能会产生一个新bug。 第二章测试分类 2.1、是否运行程序 Static Testing------------代码规范、界面、文档 Dynamic Testing--------运行程序 2.2、根据阶段分类 Unit Testing(单元测试)----------10% 最小模块,依据源程序和《详细设计》 白盒测试人员||开发人员 编译代码→静态测试→动态测试 桩模块(Stub)、驱动模块(Driver) Integration Testing(集成测试)----------20% 模块间的接口,依据单元测试的模块和《概要设计》 白盒测试人员||开发人员 一般单元和集成同步进行 System Testing(系统测试)----------40% 整个系统(功能、性能、软硬件环境),依据《需求规格说明书》 黑盒测试工程师 Acceptance Testing(验收测试)----------20% 整个系统(功能、性能、软硬件环境),依据《需求规格说明书》和验收标准

软件测试入门教程

软件测试入门教程 软件测试(Software Testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。 软件测试是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别的过程。 它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness) 、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。 Glenford J.Myers曾对软件测试的目的提出过以下观点:

(1)测试是为了发现程序中的错误而执行程序的过程。 (2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案。 (3)成功的测试是发现了至今为止尚未发现的错误的测试。 (4)测试并不仅仅是为了找出错误。通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进。 (5)这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性。 (6)没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法。 (7)另外,根据测试目的的不同,还有回归测试、压力测试、性能测试等,分别为了检验修改或优化过程是否引发新的问题、软件所能达到处理能力和是否达到预期的处理能力等。 测试原则

软件测试基础期末试卷及参考答案

1、判定覆盖设计足够多的测试用例,使得被测试程序中的每个判断的“真”、“假”分支_至少被执行一次。 2、黑盒测试的具体技术方法 ____________、 __________、 __________、____________。 等价类划分法,边界值分析法,决策表法,因果图法 3、黑盒测试又称之为___________测试。 功能 4、等价类划分有两种不同的情况:____________和____________。 有效等价类,无效等价类 5、根据覆盖目标的不同,逻辑覆盖又可分为:________________,_____________,_______________,__________________,条件组合覆盖,判断/条件覆盖。 语句覆盖,判定覆盖,条件覆盖,路径覆盖 6、根据软件生命周期中的定义,可以把自动化测试工具划分3大类____________,____________和 ____________。 白盒测试工具、黑盒测试工具、测试管理工具 7、软件测试是为发现程序中的______________而执行程序的______________。 错误,过程 8、测试用例是由______________和预期的______________两部分组成。 测试输入数据,输出数据 9、白盒测试又称为______________,可以分为______________和______________两大类。 结构测试,静态测试,动态测试 10、软件是包括____________﹑____________﹑____________的完整集合。 程序,数据,相关文档 11、边界值分析法属于____________。 黑盒测试 12、单元测试是以____________说明书为指导,测试源程序代码。 详细设计 13、集成测试以____________说明书指导,测试软件结构。 概要设计 14、确认测试以____________说明书为指导。 需求分析 15、软件开发的基本过程____________,_____________,_______________,_____________, _____________,______________。 需求分析、概要设计、详细设计,编码,测试、维护 16、代码复审属于____________,不实际运行程序。 静态测试 17、集成测试把模块组成成系统的测试方式:_____________和______________。 一次性集成测试,增量式集成测试 18、黑盒测试有两种基本方法,即:_____________和______________。 通过测试,失败测试 二、选择题(每题3分,共10题,分数为30分) 1. 下列哪一项不是白盒测试(C) A.单元测试 B.集成测试 C.系统测试 D.回归测试 2. 属于黑盒测试的方法(C) A.基于基本路径 B.控制流 C.基于用户需求测试 D.逻辑覆盖 3.在Assert类中断言对象为NULL是_____。(C) 4.___________的目的是对最终软件系统进行全面的测试确保最终软件系统产品满足需求。(A)

最全软件测试基础教程(2011版)

软件测试基础教程 测试的基本概念 测试是软件生存周期中十分重要的一个过程,是产品发布、提交给最终用户前的稳定化阶段。 1、测试的分类: 从测试方法的角度可以分为手工测试和自动化测试。 手工测试:不使用任何测试工具,根据事先设计好的测试用例来运行系统,测试各功能模块。 自动化测试:利用测试工具,通过编写测试脚本和输入测试数据,自动运行测试程序。目前最常用的自动化测试工具是基于GUI的自动化测试工具,基本原理都是录制、回放技术。 从整体的角度可以分为单元测试、集成测试、系统测试、确认测试。 单元测试:是针对软件设计的最小单位—程序模块,进行正确性检验的测试工作。一般包括逻辑检查、结构检查、接口检查、出错处理、代码注释、输入校验、边界值检查。 单元测试的依据是系统的详细设计;一般由项目组开发人员自己完成。 集成测试:在单元测试的基础上,将所有模块按照设计要求组装进行测试。一般包括逻辑关系检查、数据关系检查、业务关系检查、模块间接口检查、外部接口检查。 系统测试:系统测试是在所有单元、集成测试后,对系统的功能及性能的总体测试。 确认测试:模拟用户运行的业务环境,运用黑盒测试方法,验证软件系统是否满足用户需求或软件需求说明书中指明的软件特性(功能、非功能)上的。 从测试原理上分为:白盒测试、黑盒测试和灰盒测试。 白盒测试:是通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。 黑盒测试:是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。测试人员通过输入他们的数据然后看输出的结果从而了解软件怎样工作。在测试时,把程序看作一个不能打开的黑盆子, 在完全不考虑程序内部结构和内部

2015--软件测试--期末重点复习资料

第一章 1.软件测试正反两方面的观点 正面观点:Bill Hetzel博士(软件测试领域的先驱,正向思维代表)主要观点是:软件测试是为了验证软件是否符合用户需求,即验证软件产品是否能正常工作。 反面观点:Glenford J. Myers(反向思维的代表): 观点:测试是为了证明程序有错,而不是证明程序无错误。 2.软件测试的定义 IEEE 的定义: ?在特定的条件下运行系统或构件,观察或记录结果,对系统的某个方面做出评价。 ?分析某个软件项以发现现存的与要求的条件之差别(即错误)并评价此软件项的特性。 正确的定义:软件测是由“验证(Verification)”和“有效性确认(Validation)”活动构成的整体。 3.软件测试在软件开发中的地位 软件开发是生产制造软件;软件测试是验证开发出来软件的质量。类比传统加工制造企业,软件开发人员就是生产加工的工人,软件测试人员就是质检人员。 关系应该是: 1、没有软件开发就没有测试,软件开发提供软件测试的对象。 2、软件开发和软件测试都是软件生命周期中的重要组成部分

3、软件开发和软件测试都是软件过程中的重要活动。 4、软件测试是保证软件开发产物质量的重要手段。(网上) 4.P11 V模型 第二章 1.软件缺陷 定义:IEEE STD 729(1983)对软件缺陷给出了一个标准的定义: 从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题。 从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。主要类型:软件缺陷的主要类型/现象有: ?功能、特性没有实现或部分实现; ?设计不合理,存在缺陷; ?实际结果和预期结果不一致; ?运行出错,包括运行中断、系统崩溃、界面混乱;

软件测试技术考试试卷 (7)

就业培训班试卷(A卷) (第______期第一阶段) 姓名 ________________ 成绩 ________________ 一、选择题(每空1分,共20分) 1.系统测试计划阶段的输出有_______,系统测试设计阶段的输出有_______,系统 测试实现阶段的输出有_______,系统测试执行阶段的输出有_______:(多选) A、《系统测试计划》 B、《系统测试用例》 C、《系统测试方案》 D、《系统测试预测试项》 E、《系统测试日志》 F、《系统测试报告》 G、《系统测试执行记录》H、《系统测试缺陷报告》 2.关于软件特性和系统测试类型之间的关系说法正确的有_______:(多选) A、一个软件特性可能有多个系统测试类型 B、一种系统测试类型可能针对多个软件特性进行测试 C、系统测试主要针对使用质量属性进行测试 D、文档测试、安装测试也测试了软件的易用性 3.以下测试活动中属于白盒测试范畴的有_______、属于黑盒测试范畴的有_______、 属于静态测试范畴的有_______、属于动态测试范畴的有_______:(多选) A、需求规格说明书评审 B、代码走读 C、用LoadRunner进行性能测试 D、用Logiscope进行代码规则检查 E、用CppUnit进行单元测试执行 4.在产品类软件中,需求是_______(单选) A、由特定用户提出 B、由大量的潜在用户提出、单位内部市场分析人员分析后得出 C、以契约形式确定 D、以合同形式确定 5.提交的缺陷开发人员不认可,下面说法正确的是_______(多选) A、对需求的理解不一致引起的 B、需求描述存在二义性引起的 C、测试人员一贯不好的工作态度让开发人员形成了惯性思维 D、开发人员认为测试人员对缺陷的描述难以理解 E、开发人员不愿面对自己被否定的事实 F、测试人员不用考虑这种现象,只要做好自己的本职工作就可以了 6.系统测试的主要对象是_______(单选) A、软件外部质量特性 B、软件使用质量特性 C、软件内部质量特性 D、软件质量特性集合 7.进行配置管理的作用是保证配置项的_______(多选)

软件工程(清华钱乐秋版)期末复习重点

1、什么是软件工程 在《计算机科学技术百科全书》中软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。 2、软件生存周期分哪几个阶段分别简述各个阶段的任务。 答:软件生存周期有计算机系统工程、需求分析、设计、编码、测试、运行和维护6个阶段。 A 计算机系统工程的任务是确定待开发软件的总体要求和范围,以及该软件与其他计算机 系统元素之间的关系,进行成本估算,做出进度安排,并进行可行性分析,即从经济、技术、法律等方面分析待开发的软件是否有可行的解决方案,并在若干个可行的解决方案中做出选择。 B 需求分析主要解决待开发软件要“做什么”的问题,确定软件的功能、性能、数据、界面 等要求,生成软件需求规约。 C 软件设计只要解决待开发软件“怎么做”的问题。软件设计通常可分为系统设计和详细设 计。系统设计的任务是设计软件系统的体系结构,包括软件系统的组成成分、各成分的功能和接口、成分间的连接和通信,同时设计全局数据结构。详细设计的任务是设计各个组成成分的实现细节,包括局部数据结构和算法等。 D 编码阶段的任务是用某种程序设计语言,将设计的结果转换为可执行的程序代码。 E测试阶段的任务是发现并纠正软件中的错误和缺陷。测试主要包括单元测试、集成测试、确认测试和系统测试。 F软件完成各种测试后就可交付使用,在软件运行期间,需对投入运行的软件进行维护,即可发现了软件中潜藏的错误或需要增加新的功能或使软件适应外界环境的变化等情况出现时,对软件进行修改。 3、简述各类软件过程模型的特点。 答:典型的软件过程模型有:瀑布模型、演化模型(增量模型、原型模型、螺旋模型)、喷泉模型、基于构件的开发模型和形式方法模型等。 A瀑布模型中,上一阶段的活动完成并经过评审后才能开始下一阶段的活动,其特征是: 接受上一阶段活动的结果作为本阶段活动的输入; 依据上一阶段活动的结果实施本阶段应完成的活动; 对本阶段的活动进行评审; 将本阶段活动的结果作为输出。 B 增量模型将软件的开发过程分成若干个日程时间交错的线性序列,每个线性序列产生软 件的一个可发布的增量版本,后一个版本是对前一个版本的修改和补充,重复增量发布的过程,直至产生最终的完善产品。 C 原型方法从软件工程师与客户的交流开始,其目的是定义软件的总体目标,标识需求。 然后快速制定原型开发的计划,确定原型的目标和范围,采用快速设计的方式对其建模,并构建模型。被开发的原型应交付给客户使用,并收集客户的反馈意见,这些反馈意见可在下

(完整版)软件测试试题及答案

太原理工大学软件测试技术 适用专业:软件工程2011级考试日期:2014.1 时间:120 分钟 一、判断题 1. 测试是调试的一个部分(╳) 2. 软件测试的目的是尽可能多的找出软件的缺陷。(√) 3. 程序中隐藏错误的概率与其已发现的错误数成正比(√) 4. Beta 测试是验收测试的一种。(√) 5. 测试人员要坚持原则,缺陷未修复完坚决不予通过。(√) 6. 项目立项前测试人员不需要提交任何工件。(╳) 7. 单元测试能发现约80%的软件缺陷。(√) 8. 测试的目的是发现软件中的错误。(√) 9. 代码评审是检查源代码是否达到模块设计的要求。(√) 10. 自底向上集成需要测试员编写驱动程序。(√) 11. 测试是证明软件正确的方法。(╳) 12. 负载测试是验证要检验的系统的能力最高能达到什么程度。(√) 13. 测试中应该对有效和无效、期望和不期望的输入都要测试。(√)验收测试是由最 终用户来实施的。(√) 14. 测试人员要坚持原则,缺陷未修复完坚决不予通过。(√)黑盒测试也称为结构测试。(╳)集成测试计划在需求分析阶段末提交。(╳) 15. 软件测试的目的是尽可能多的找出软件的缺陷。(√) 16. 自底向上集成需要测试员编写驱动程序。(√) 17. 负载测试是验证要检验的系统的能力最高能达到什么程度。(╳) 18. 测试程序仅仅按预期方式运行就行了。(╳) 19. 不存在质量很高但可靠性很差的产品。(╳) 20. 软件测试员可以对产品说明书进行白盒测试。(╳) 21. 静态白盒测试可以找出遗漏之处和问题。(√) 22. 总是首先设计白盒测试用例。(╳) 23. 可以发布具有配置缺陷的软件产品。(√) 24. 所有软件必须进行某种程度的兼容性测试。(√) 25. 所有软件都有一个用户界面,因此必须测试易用性。(╳) 26. 测试组负责软件质量。(╳) 27. 按照测试实施组织划分,可将软件测试分为开发方测试、用户测试和第三方测试。(√) 28. 好的测试员不懈追求完美。(× ) 29. 测试程序仅仅按预期方式运行就行了。( × ) 30. 在没有产品说明书和需求文档的条件下可以进行动态黑盒测试。( √) 31. 静态白盒测试可以找出遗漏之处和问题。( √) 32. 测试错误提示信息不属于文档测试范围。( × )

《软件测试技术考卷》卷A

学院 系 专业班级姓名 学号 (密封线外不要写姓名、学号、班级、密封线内不准答题,违者按零分计) …………………………………………密…………………………封……………………………………线…………………………………

A 卷 第 页共5页32.软件缺陷(3分) 软件缺陷的定义: 从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。3.回归测试 (3分) 回归测试是在程序有修改的情况下保证原有功能正常的一种测试策略和方法。 五、简答题(每题10分,30分) 1.简述集成测试的两种模式以及每种模式的优缺点? ⑴集成测试的两种模式是渐增式测试模式和非渐增式测试模式。非渐增式测试模式是先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序;渐增式测试模式是把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试。4分⑵二者的优缺点: a.渐增式测试模式需要编写的软件较多,工作量较大,而非渐增式测试开销小。 b.渐增式测试模式发现模块间接口错误早,而非渐增式测试模式晚。 c.非渐增式测试模式发现错误多,较难诊断,而使用渐增式测试模式,如果发生错误则往往和最近加进来的那个模块有关。 d.渐增式测试模式测试更彻底。 e.使用非渐增式测试模式可以并行测试。2.假设你是一家软件公司的总工程师,当你把下图给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意你的观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”你怎么反驳他? 3.软件产品规格说明书为什么是软件缺陷存在最多的地方? ⑴用户一般是非计算机专业人员,软件开发人员和用户的沟通存在较大困难,对要开发的产品功能理解不一致。2分⑵由于软件产品还没有开发、设计、完全靠想象去描述系统的实现结果,所以有些特性还不够清晰。2分 ⑶需求变化的不一致性。用户的需求总是在不断变化的,这些变化结果如果没有在产品需求规格说明书中得到正确的描述,容易引起前后文、上下文的矛盾。2分 ⑷对规格说明书不够重视,在规格说明书的设计和写作上投入的人力、时间不够。2分 ⑸没有在整个开发队伍中进行充分沟通,有时只有设计师或项目经理得到比较多的信息。2分 学院 系专业班级姓名 学号 (密封线外不要写姓名、学号、班级、密封线内不准答题,违者按零分计)…………………………………………密…………………………封……………………………………线…………………………………

软件测试基础知识整理

软件测试基础教程 测试是软件生存周期中十分重要的一个过程,是产品发布、提交给最终用户前的稳定化阶段。 一、测试的分类: 从测试方法的角度分为: (1)手工测试:不使用任何测试工具,根据事先设计好的测试用例来运行系统,测试各功能模块。 (2)自动化测试:利用测试工具,通过编写测试脚本和输入测试数据,自动运行测试程序。目前最常用的自动化测试工具是基于GUI的自动化测试工具,基本原理都是录制、回放技术。 > 从整体的角度分为: (1)单元测试:是针对软件设计的最小单位—程序模块,进行正确性检验的测试工作。一般包括逻辑检查、结构检查、接口检查、出错处理、代码注释、输入校验、边界值检查。单元测试的依据是系统的详细设计;一般由项目组开发人员自己 完成。 (2)集成测试:在单元测试的基础上,将所有模块按照设计要求组装进行测试。一般包括逻辑关系检查、数据关系检查、业务关系检查、模块间接口检查、外部接口检查。 (3)系统测试:系统测试是在所有单元、集成测试后,对系统的功能及性能的总体测试。 (4)确认测试:模拟用户运行的业务环境,运用黑盒测试方法,验证软件系统是否满足用户需求或软件需求说明书中指明的软件特性(功能、非功能)上的。 从测试原理上分为: . (1)白盒测试:是通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。 (2)黑盒测试:是通过使用整个软件或某种软件功能来严格地测试,而并没有通过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。测试人员通过输入他们的数据然后看输出的结果从而了解软件怎样工作。在测试时, 把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它 只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收和正确的输出。 黑盒测试方法主要有等价类划分、边界值分析、因—果图、错误推测法。 A、等价类划分:是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子 集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试 用例设计方法。 B、边界值分析:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是 发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错 误。 C、错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的 方法。错误推测方法的基本思想:列举出程序中所有可能有的错误和容易发生错误的特 殊情况,根据他们选择测试用例。例如,在单元测试时曾列出的许多在模块中常见的 错误。以前产品测试中曾经发现的错误等,这些就是经验的总结。还有,输入数据 和输出数据为0的情况。输入表格为空格或输入表格只有一行。这些都是容易发生错 误的情况。可选择这些情况下的例子作为测试用例。

软件测试期末复习总结

1.1 软件质量至关重要 软件无处不在,软件越来越复杂、功能越来越强,软件的影响越来越大,软件的受众越来越多。人们对软件越来越依赖,但是软件是人编写的 1.1.1 软件错误案例研究 Disney的狮子王1994-1995,Intel 奔腾浮点运算1994,美航天局火星极地登陆1999,爱国者导弹防御系统1991,千年虫约1974,“冲击波”计算机病毒2003,放射性设备治死 1.2 何谓软件缺陷 通通称为:软件缺陷(Bug) 1.2.1 软件缺陷的定义 软件缺陷对应于需求(功能)规格书 (1)软件未达到规格书标明的功能 (2)软件出现了规格书标明不会出现的错误 (3)软件功能超出规格书指明范围 (4)软件未达到规格书虽未指出但应达到的功能 (5)软件测试员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好 1.3 软件缺陷出现的原因 (1)系统分析的原因 对产品的理解不全面、不到位; 需求不断改动 开发团队重视程度、沟通不够 (2)系统设计的原因 说不出来就做不出来 1.4 软件缺陷的修复费用 (1)费用呈几何级数增加 需求阶段:1 设计阶段:3-6 编程阶段:10 内部测试:20-40 外部测试:30-70 产品发布:40-1000 (2)费用增加的原因 软件范围扩大 关联增大 熟悉程度减少 模块间影响扩大

1.5 软件测试员的职责 观点1: 试图验证软件是“工作的”观点2: 设法证明软件是“不工作的” (1)发现软件缺陷(2)尽早地发现缺陷(3)确保发现的缺陷被修复 找出软件缺陷,尽可能早一些,并确保其得以修复 1.6 软件测试员应具备的素质 (1)专业技能: 软件工程知识,软件相关知识,熟悉编程知识,相关的业务背景知识 (2)基本素质 有条理地思维,打破砂锅问到底,细心、责任心,有幽默感 (3)专业素质: 探索精神,善于发现缺陷,不懈努力,创造性,追求完美,判断准确,老练稳重,有说服力1.7 软件测试原则————原则是指导测试实践纲领性的指导 1、完全测试是不可能的 输入量、输出量、实现途径多,提交的产品是可接受的,而不是没有缺陷的 2、测试无法显示潜伏的软件缺陷 可报告已发现的缺陷,却无法报告潜伏的缺陷;报告的内容:根据对发现的缺陷进行分析… 3、找到的缺陷越多,说明缺陷越多 一般情况下,缺陷和寄生虫一样,成群出现,程序员的疲倦,程序员常犯同样的错误 经验: 成群的出现可能是大灾难的征兆 4、杀虫剂怪事——软件测试越多,其免疫力越强 出现的原因:相同的方法重复使用,人的因素缺陷性质的因素 应对方法:变换测试方法、测试程序 5、并非所有的缺陷都能修复 没有足够的资源,不算真正的缺陷(也许可说成一项功能),修复的风险太大,不值得修复(商业风险决策)是否修复的决策,需要有项目管理、测试员、程序员共同参与 6、软件测试的其他原则 事先定义好质量标准;测试要随开发的启动而尽早开始;第三方测试更客观、更有效;重视测试计划、重视文档 7、测试是一项讲究条理的技术专业 2.2 何谓软件工程 何谓工程的方法 工程不同于科研、创造 工程:受资源限制、成熟的、可重复的、只许成功 明确地定义试图解决的问题,然后使用和开发标准的工具和技术来解决之 内容:理论、方法学、技术、工具、管理、组织 软件工程定义 系统的、规范的、定量的方法在软件的开发、操作和维护中的应用(IEEE610.12-1990定义)多人构造多版本软件(Parnas定义) 2.1 软件工程简史

软件测试技术基础教程

软件测试技术基础教程 软件测试技术基础教程。近来,软件测试行业发展迅速,企业越来越重视测试了。越来越多的人加入了测试大军中,很多人也想通过自学来学习软件测试技术加入这个行业,更多的人开始关注软件测试案例教程,那么软件测试案例教程哪里好呢?软件测试案例教程内容有什么?软件测试案例教程学什么?下面我为大家简要介绍一下软件测试案例教程——黑盒测试和白盒测试 黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。 白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。 软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒测试主要是为了发现以下几类错误: 1、是否有不正确或遗漏的功能? 2、在接口上,输入是否能正确的接受?能否输出正确的结果? 3、是否有数据结构错误或外部信息(例如数据文件)访问错误?

4、性能上是否能够满足要求? 5、是否有初始化或终止性错误? 软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试主要是想对程序模块进行如下检查: 1、对程序模块的所有独立的执行路径至少测试一遍。 2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。 3、在循环的边界和运行的界限内执行循环体。 4、测试内部数据结构的有效性,等等。

《软件测试技术基础教程》习题解答

第一章软件测试理论 一、选择题 1. 软件测试的目的是 C 。 A.表明软件的正确性B.评价软件质量 C.尽可能发现软件中的错误D.判定软件是否合格 2. 下面关于软件测试的说法, A 是错误的。 A.软件测试是程序测试 B.软件测试贯穿于软件定义和开发的整个期间 C.需求规格说明、设计规格说明都是软件测试的对象 D.程序是软件测试的对象 3. 某软件公司在招聘软件评测师时,应聘者甲向公司做如下保证: ①经过自己测试的软件今后不会再出现问题; ②在工作中对所有程序员一视同仁,不会因为在某个程序员编写的程序中发现的问题多,就重点审查该程序,以免不利于团结; ③承诺不需要其他人员,自己就可以独立进行测试工作; ④发扬咬定青山不放松的精神,不把所有问题都找出来,决不罢休; 你认为应聘者甲的保证 B 。 A.①、④是正确的B.②是正确的 C.都是正确的D.都不正确 4. 软件测试的对象包括 B 。 A.目标程序和相关文档B.源程序、目标程序、数据及相关文档C.目标程序、操作系统和平台软件D.源程序和目标程序 5. 导致软件缺陷的原因有很多,①-④是可能的原因,其中最主要的原因包括 D 。 ①软件需求说明书编写的不全面,不完整,不准确,而且经常更改②软件设计说明书③软件操作人员的水平④开发人员不能很好的理解需求说明书和沟通不足 A.①、②、③B.①、③C.②、③D.①、④ 二、简答题 1.简述软件测试发展的历史及软件测试的现状。 参考答案: 软件测试是伴随着软件的产生而产生的。在软件行业发展初期,没有系统意义上的软件测试,更多的是一种类似调试的测试,测试用例的设计和选取也都是根据测试人员的经验随机进行的,大多数测试的目的是为了证明系统可以正常运行。 到了20世纪70年代以后,很多测试理论和测试方法应运而生,逐渐形成了一套完整的体系。在产业界,从20世纪70年代后期到20世纪80年代中期,很多软件企业成立了QA 或者SQA部门。后来QA的职能转变为流程监控(包括监控测试流程),而测试(Testing)则从QA中分离出来成为独立的组织职能。 到了20世纪80年代初期,一些软件测试的基础理论和实用技术开始形成,软件测试作为软件质量保证(SQA)的主要职能,包含软件质量评价的内容。软件测试已有了行业标准(IEEE/ANSI )。 在我国,软件测试目前还没有形成一个真正的产业,尚处于起步阶段。 但是,在国内,现在在软件测试行业中各种软件测试的方法、技术和标准都还在探索阶段。

相关文档
相关文档 最新文档