软件测试题目

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一:选择题
1.软件测试的目的是(发觉软件错误)。

2.软件测试中白盒法是通过度析程序的(内部逻辑)来设计测试用例的。

3.黑盒法是依照程序的(功能)来设计测试用例的。

4.为了提高软件测试的效率,应该(选择发觉错误可能性最大的数据作为测试用例
5.与设计测试用例无关的文档是(项目开发打算)。

6.测试的关键问题是(如何选择测试用例)。

7.软件测试用例要紧由输入数据和(预期输出结果)两部份组成。

8.成功的测试是指运行测试用例后(发觉了程序错误)。

9.以下几种逻辑覆盖标准中,查错能力最强的是(条件组合覆盖)
10.在黑盒测试中,着重检查输入条件组合的方式是(因果图法)。

11.单元测试要紧针对模块的几个大体特点进行测试,该时期不能完成的测试是(系统功能)。

12.软件测试进程中的集成测试主若是为了发觉( c )时期的错误。

B
A)需求分析B)概要设计C)详细设计D)编码
13.不属于白盒测试的技术是( d )。

A)途径覆盖B)判定覆盖C)循环覆盖D)边界值分析
14.集成测试时,能较早发觉高层模块接口错误的测试方式为(a)。

A)自顶向下渐增式测试B)自底向上渐增式测试C)非渐增式测试D)系统测试
15.确认测试以(需求规格说明书)文档作为测试的基础。

16.利用白盒测试方式时,确信测试数据应依照(a )和指定的覆盖标准。

A)程序内部逻辑B)程序的复杂度C)利用说明书D)程序的功能17.程序的三种大体结构是(顺序、选择、循环
18.结构化程序设计的一种大体方式是(d )
A)挑选法B)递归法C)归纳法D)慢慢求精法
19.软件调试的目的是(找犯错误所在并更正之)
20.程序三种大体结构的一起特点是( d )
A)不能嵌套利用B)只能用来写简单程序
C)已经用硬件实现D)只有一个入口和一个出口
21.下面说法正确的选项是( c )。

A)通过测试没有发觉错误说明程序正确B)测试的目标是为了证明程序没有错误
C)成功的测试是发觉了迄今尚未发觉的错误的测试D)成功的测试是没有发觉错误的测试
22.覆盖准那么最强的是( d )。

A)语句覆盖B)判定覆盖C)条件覆盖D)途径覆盖
23.发觉错误能力最弱的是( a )。

A)语句覆盖B)判定覆盖C)条件覆盖D)途径覆盖
24.实际的逻辑覆盖测试中,一样以( C )为主设计测试用例。

A)条件覆盖B)判定覆盖C)条件组合覆盖D)途径覆盖
25.下面( d )方式能够有效地检测输入条件的各类组合可能引发的错误。

A)等价类划分B)边界值分析C)错误推测D)因果图
26.与确认测试时期有关的文档是( a )。

A)需求规格说明书B)概要设计说明书C)详细设计说明书D)源程序
27.超出软件工程范围的测试是( c )。

D
A)单元测试B)集成测试C)确认测试D)系统测试
28.软件测试不需要了解软件设计的( c )。

D
A)功能B)内部结构C)处置进程D)条件
29.( b )方式需要考察模块间的接口和各模块之间的联系。

A)单元测试B)集成测试C)确认测试D)系统测试
30.调试应该由( b )完成。

A)与源程序无关的程序员B)编制该源程序的程序员
C)不了解软件设计的机构D)设计该软件的机构
31.基线是软件生存期中各开发时期的一个特定点,它可作为一个检查点,当采纳的基线发生错误时,咱们能够返回到最近和最适当的(d )上。

C
A)配置项B)程序C)基线D)进程
32.版本治理是对系统不同版本进行的( a )进程
A)标识与跟踪B)标识变更C)发布变更D)操纵变更33.在变更操纵中,治理各个用户存取和修改一个特定软件配置对象的权限是( a )。

D
A)异步操纵B)同步操纵C)存取操纵D)基线操纵
34. 在配置治理中,“登入”和“检出”处置实现了两个重要的变更操纵要素,即同步操纵和( B )。

A)异步操纵B)同步操纵C)基线操纵D)存取操纵
35. 依照软件配置治理的原始指导思想,受操纵的对象应是( b )。

C
A)软件元素B)软件配置项C)软件项目D)软件进程
36. 软件配置项是软件配置治理的对象,指的是软件工程进程中所产生的( b )。

A)接口B)软件环境C)信息项D)版本
37.在变更操纵中,可用来确保由不同用户所执行的并发操纵是( B )。

A)异步操纵B)同步操纵C)存取操纵D)基线操纵
38.以下说法错误的选项是( a )。

A)软件配置治理简称SCI
B)软件配置项是配置治理的大体单位
C)软件配置事实上是一动态的概念
D)软件工程进程中某一时期的变更均要引发软件配置的变更
一、填空题
1.软件测试的目的是尽可能多地发觉软件中存在的错误,将测试结果作为纠错的依据。

2.测试时期的大体任务是依照软件开发各时期的文档资料和程序的源内部结构,精心设计一组测试用例,利用这些实例执行程序,找出软件中潜在的各类错误和缺点。

3.测试用例由输入数据和预期的输出数据两部份组成。

4.软件测试方式一样分为两大类:动态方式和静态方式。

5.动态测试通过执行程序发觉错误。

依照测试用例的设计方式不同,动态测试又分为黑盒与白盒两类。

6.静态测试采纳人工检测和运算机辅助静态分析的手腕对程序进行检测。

7.人工审查程序偏重于编码质量的查验,而软件审查除审查编码还要对各时期软件产品进行查验。

8.运算机辅助静态分析利用静态分析工具对测试程序进行特性分析。

9.黑盒法只在软件的接口处进行测试,依据需求规说明书,检查程序是不是知足功能要求。

10.白盒法必需考虑程序的内部结构和出来进程,以检查处置进程的细节为基础,对程序中尽可能多的逻辑途径进行测试。

11.白盒测试是结构测试,被测对象是源程序,以程序的内部逻辑为基础设计测试用例。

12.逻辑覆盖是对程序内部有判定存在的逻辑结构设计测试用例,依照程序内部的逻辑覆盖程度又可分为语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和途径覆盖6种覆盖技术。

13.实际的逻辑覆盖测试中,一样以条件组合覆盖为主设计测试用例,然后再补充部份用例,以达到途径覆盖测试标准。

14.循环覆盖是对程序内部有循环存在的逻辑结构设计测试用例,它通过限制循环次数来测试。

15.大体途径测试是在程序操纵流程图基础上,通过度析操纵构造的环路复杂性,导出大体途径集合,从而设计测试用例。

16.黑盒测试是功能测试,用黑盒技术设计测试用例有4种方式:划分等价类、边界值分析、因果图
和错误推断法。

17.等价类划分从程序的功能说明,找出一个输入条件(一般是一句话或一个短语),然后将每一个输入条件划分成两个或多个等价类。

18.边界值分析是将测试边界情形作为重点目标,选取正好等于、方才大于或方才小于边界值的测试数据。

若是输入或输出域是一个有序集合,那么应选取集合的第一个元素和最后一个元素作为测试用例。

19.在测试程序时,依照体会或直觉推测程序中可能存在的各类错误,称为错误推测法。

20.因果图的大体原理是通过画因果图,把用自然语言描述的功能转换为判定表,最后为判定表每一列设计一个测试用例。

21.测试的综合策略是在测试中,联合利用各类测试方式。

通常先用黑盒法设计大体的测试用例,再用白盒法补充一些必要的测试用例。

22.软件测试进程中需要3类信息:软件配置、测试配置和测试工具。

23.软件测试一样通过4个测试:单元测试、集成测试、确认测试和系统测试。

24.单元测试指对源程序中每一个程序单元进行测试,检查各个模块是不是正确实现规定的功能,从而发觉模块在编码中或算法中的错误,它涉及编码和
详细设计的文档。

25.单元测试要紧测试模块的5个大体特点:模块接口、局部数据结构、重要的执行途径、错误处置和边界条件。

26.在单元测试中,需要为被测模块设计桩模块和驱动模块。

驱动模块用来模拟被测模块的上级挪用模块,桩模块用来代替被测模块所挪用的模块。

27.集成测试指在单元测试基础上,将所有模块依照设计要求组装成一个完整的系统进行的测试。

也称组装测试或联合测试。

28.集成测试的方式有两种:非渐增式和渐增式。

29.渐增式测试有两种不同的组装模块的方式:自顶向下结合和自底向上结合。

30.自顶向下渐增式测试不需要编写驱动模块,只需要编写桩模块,其步骤是从顶层模块开始,沿着被测程序的软件结构图的操纵途径慢慢向下测试,它有两种组合策略:深度优先策略和宽度优先策略。

31.自底向上渐增式测试不需要编写驱动模块,只需要编写桩模块。

32.确认测试指检查软件的功能与性能是不是与需求规格说明书中确信的指标相符合,又称有效性测试。

33.确认测试在模拟环境下运用黑盒测试方式,由专门测试人员和用户参加的测试。

34.确认测试开始前需要制定测试打算,终止后要写出测试分析报告。

其测试用例要选用实际运用的数据。

35.软件配置审查的任务是检查软件的所有文档资料的完整性和正确性。

36.调试也称纠错,是在成功的测试以后才开始进行,其目的是确信错误的位置和缘故,并更正错误。

37.调试技术包括简单调试、归纳法调试、演绎法调试和回溯法调试。

38.回溯法调试是从程序产生错误的地址动身,而归纳法调试是从测试结果发觉的线索入手。

39.被测试程序不在机械上运行,而是采纳人工检测和运算机辅助分析检测的手腕称为静态测试。

40.用等价类划分法设计一个测试用例时,使其覆盖尽可能多的尚未被覆盖的合理等价类。

41.用等价类划分法设计一个测试用例时,使其覆盖一个不合理等价类。

42.在单元测试时,需要为被测模块设计桩模块和驱动模块。

43.在集成测试时有两种测试方式,它们是渐进式和非渐进式
44.软件测试是为了发觉软件错误和缺点而执行程序的进程。

45.运行被测程序的方式称为动态测试。

46.动态测试中,要紧测试软件功能的方式称为黑盒测试法。

47.选择测试用例,使得被测程序中每一个判定的每一个分支至少执行一次,这种逻辑覆盖标准称为判定覆盖。

48.要覆盖含循环结构的所有途径是不可能的,一样通过限制循环次数来测试。

49.用等价类划分法设计测试用例时,若是被测程序的某个输入条件规定了取值范围,那么可确信一个合理的等在和两个不合理的等价类。

50.凭体会或直觉推测程序中可能存在的错误而设计测试用例的方式是错误推测

51.集成测试中的具体方式是渐增式和非渐增式测试方式。

52.确认测试时期的两项工作是进行确认测试和软件配置审查。

53.在单元测试中,测试一个模块时,需要设计桩模块和驱动模块。

54.软件配置治理,简称SCM,它用于整个软件工程进程。

其要紧目标是:标示变更、操纵变更、确保变更正确地实现、报告有关变更。

55.SCM是一组治理整个软件生存期各时期中变更的活动。

56.基线的作用是把各时期的开发工作划分得加倍明确,便于检查与确认时期功效。

因此,基线能够作为项目的一个检查点。

二:名词说明
1.软件测试
软件测试是按测试方式用测试工具检查软件错误和缺点的进程。

软件测试指为了发觉软件中的错误而执行软件的进程。

它的目标是尽可能多地发觉软件中存在的错误,将测试结果作为纠错的依据。

2.静态测试
静态测试指被测试的程序不在机械上运行,而是采纳人工检测和运算机辅助静态分析的手腕对程序进行检测。

3.动态测试
动态测试是通过运行软件发觉错误的进程
4.黑盒测试
黑盒测试指把测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处置进程,只在软件的接口处进行测试,依据需求规格说明书,检查程序是不是知足功能要求,又称为功能测试或数据驱动测试。

5.白盒测试
白盒测试指把测试对象看成一个打开的盒子,测试人员需了解程序的内部结构和处置进程,以检查处置进程的细节为基础,对程序中尽可能多的逻辑途径进行测试,查验内部操纵结构和数据结构是不是有错,实际的运行状态与预期的状态是不是一致。

6.语句覆盖
语句覆盖指设计足够的测试用例,使被测程序中每一个语句至少执行一次。

7.判定覆盖
判定覆盖指设计足够的测试用例,使被测程序中每一个判定表达式至少取得一次“真”值或“假”值,从而使程序的每一个分支至少都通过一次,因此判定覆盖又称分支覆盖。

8.条件覆盖
条件覆盖指设计足够测试用例,使判定表达式中每一个条件的各类可能的值至少显现一次。

9.判定/条件覆盖
判定/条件覆盖指设计足够的测试用例,使得判定表达式中每一个条件的所有可能取值至少显现一次,并使每一个判定表达式所有可能的结果也至少显现一次。

10.条件组合覆盖
条件组合覆盖指设计足够的测试用例,使得每一个判定表达式中条件的各类可能的值的组合都至少显现一次。

11.途径覆盖
途径覆盖指设计足够的测试用例,覆盖被测程序中所有可能的途径。

12.测试用例
测试用例指为寻觅程序中的错误而精心设计的一组测试数据。

13.驱动模块
驱动模块指用来模拟被测模块的上级挪用模块,其功能比真正的上级模块简单得多,它只完成同意测试数据,以上级模块挪用被测模块的格式驱动被测模块,接收被测模块的测试结果并输出。

14.桩模块
桩模块指用来代替被测试模块所挪用的模块,其作用是返回被测试模块所需的信息。

15.单元测试
单元测试指对源程序中每一个程序单元进行测试,检查各个模块是不是正确实现规定的功能,从而发觉模块在编码中或算法中的错误。

16.集成测试
集成测试指在单元测试基础上,将所有模块依照设计要求组装成一个完整的系统进行的测试。

也称组装测试或联合测试。

17.确认测试
确认测试指检查软件的功能与性能是不是与需求规格说明书中确信的指标相符合,又称有效性测试。

18.渐增式测试
渐增式测试指逐个把未通过测试的模块组装到已通过测试的模块上去,进行集成测试。

每加入一个新模块进行一次集成测试,重复此进程直到程序组装完毕。

19.非渐增式测试
非渐增式测试指第一对每一个模块别离进行单元测试,然后把所有的模块按设计要求组装在一路进行测试。

20.调试
调试指确信错误的缘故和位置,并更正错误的进程,也称纠错。

21:强度测试:验证软件的性能在各类极端的周边环境和系统条件下的经受能力。

22:性能测试:软件的性能在正常环境和系统条件下重复利历时可否知足性能指标。

23:平安测试:为了验证软件的数据保密性和数据完整性的测试。

24:兼容测试:针对测试软件和其他软件之间,和不同硬件之间的兼容测性进行测试。

25:集成测试主若是为了查验软件系统是不是符合实际软件结构,发觉与接口有关的各类错误。

26:验收测试:在软件开发终止以后,用户对软件产品投入实际应用之前,进行最后一次质量查验。

验收测试中
1):α测试:软件开发公司组织内部人员模拟各类用户行为对即将面市的软件产品进行测试,试图发觉并修改错误,通过a测试以后的软件产品称为β版本
2):β测试:软件开发公司组织各方面的典型用户在日常生活中实际利用β版本,并要求用户报告异样情形。

27:回归测试:软件系统被修改或扩充后从头进行的测试
28.软件缺点:存在于软件(程序,文档,数据)当中的不希望显现或不可同意的
误差
29.软件错误:软件在运行的进程中,不希望显现或不可同意的内部状态。

30软件质量:与软件产品知足明确或隐含需求的能力有关的特质和特性的总和
31软件测试进程模型:对测试进程的抽象,用于概念软件测试的流程和方式
四:简答题
1.什么缘故说软件测试是软件开发中不可缺少的重要一环,但不是软件质量保证的平安网?
答:①软件测试是软件开发中不可缺少的重要一环,缘故是:
1:测试的工作量约占整个项目开发工作量的40%左右,几乎一半。

:
2:软件测试代表了需求分析、设计、编码的最终复审。

②软件测试不是软件质量保证的平安网,因为软件测试只能发觉错误,不能保证没有错误。

2.软件测试的目的是什么?什么缘故把软件测试的目的概念为只是发觉错误?
①软件测试是为了发觉错误而执行程序的进程。

②一个好的测试用例能够发觉至今尚未发觉的错误。

③一个成功的测试是发觉了至今尚未发觉的错误。

软件测试的目标概念为只是发觉错误,缘故是软件测试能够有两个目标,一个是预防错误,另一个是发觉错误。

由于软件开发是人的制造性劳动,人的活动不可能十全十美,错误可能发生在任何一个时期,因此预防错误这一目标几乎是不可实现的,因此软件测试的目标概念为只是发觉错误。

3.软件测试应当遵循什么原那么?什么缘故要遵循这些原那么?
1)所有的测试应该都回溯到用户需求(因为软件开发最全然的目标是知足客户的需求)
2)及早测试和不断测试(因为软件的复杂性和程序性,错误在任何时期都有可能发生,因此应该把测试贯穿到每一个时期)
3)测试工作应该由专业的测试机构完成(因为人的主观性的缘故,对自己设计的程序印象深刻,不易发觉错误)
4)Pareto原那么,事实证明软件测试中的80%的错误,是由20%的模块引发的。

5)测试用例时,应考虑各类情形
4.软件测试的步骤是什么?这些测试与软件开发各时期之间的关系?
①软件测试的步骤如图7-3所示。

2 图7-
3 软件测试的步骤
②这些测试与软件开发各时期之间的关系如图7-2所示。

因为系统测试已经超出了软件工程的范围,因此图7-2中的系统测试不包括在内。

5.软件测试的进程是什么?
①测试设计:依照软件开发各时期的文档资料和程序的内部结构,利用各类设计测试用例技术精心设计测试用例。

②测试执行:利用这些测试用例执行程序,取得测试结果。

③测试结果比较:将预期的结果与实际测试结果进行比较,若是二者不符合,关于显现的错误进行纠错,并修改相应文档。

修改后的程序还要进行再次测试,直到中意为止。

若是测试发觉不了错误,可能由于测试配置考虑不周到,应考虑从头制定测试方案,设计测试用例。

6.单元测试、集成测试和确认测试各自要紧目标是什么?它们之间有什么不同?彼此有什么关系?
①单元测试的要紧目标是检查各个模块是不是正确实现规定的功能,从而发觉模块在编码中或算法中的错误。

②集成测试的要紧目标是检查与设计相关的软件体系结构的有关问题。

③确认测试的要紧目标是检查已实现的软件是不是知足需求规格说明书中确信的各类需求。

单元测试、集成测试和确认测试之间的不同如下:
①测试内容不同:单元测试集中于单个模块的功能和测试;集成测试集中于
模块组合的功能和软件结构查验,其测试内容要紧包括模块组装中可能显现的问题,即数据穿过接口可能丢失、一个模块可能破坏另一个模块的内容、子功能组装可能不等于主功能、全程数据结构问题、误差积存问题;确认测试集中于论证软件需求的可追溯性,要紧包括测试软件功能和性能是不是与软件需求一致、测试软件配置的所有程序与文档是不是正确完整而且一致。

②测试的方式不同:单元测试老是利用白盒测试法,为被测模块设计驱动模块和桩模块;集成测试利用渐增式测试和非渐增式测试,渐增式测试又有分为自顶向下结合法和自底向上结合法;确认测试老是利用黑盒测试法。

③发觉的错误不同:单元测试发觉的错误主若是在编码时期产生的错误,集成测试发觉的错误主若是在设计时期产生的错误,确认测试发觉的错误主若是在需求分析时期产生的错误。

④涉及的文档不同:单元测试涉及编码和详细设计文档,集成测试涉及详细设计文档和概要设计文档,确认测试涉及软件需求规格说明书和用户手册。

三者彼此关系是:单元测试、集成测试和确认测试是顺序实现的。

第一单元测试对各个模块进行测试,然后集成测试以单元测试为基础,将所有已测模块依照设计要求组装成一个完整的系统,对模块组合的功能和软件结构查验进行测试,最后确认测试是以集成测试为基础,测试集成的软件是不是知足需求规格说明书中确信的各类需求。

7.什么是黑盒测试与白盒测试?它们都适应哪些测试?
①黑盒测试指把测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处置进程,只在软件的接口处进行测试,依据需求规格说明书,检查程序是不是知足功能要求,又称为功能测试或数据驱动测试。

②白盒测试指把测试对象看成一个打开的盒子,测试人员需了解程序的内部结构和处置进程,以检查处置进程的细节为基础,对程序中尽可能多的逻辑途径进行测试,查验内部操纵结构和数据结构是不是有错,实际的运行状态与预期的状态
是不是一致。

③白盒测试适应的测试有单元测试、逻辑覆盖(按逻辑覆盖程度不同,有语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和途径覆盖。

)、循环覆盖(限制循环次数,有单循环和嵌套循环)和大体途径测试。

④黑盒测试适应的测试有:确认测试、等价类划分、边界值分析、错误推测和因果图。

8.简述软件测试与软件调试的区别。

①测试从一个侧面证明程序员的失败,而调试是为了证明程序员的正确。

②测试从已知条件开始,利用预先概念的程序,且有预知的结果,不可预见的只是程序是不是通过测试。

调试一样以不可知的内部条件开始,除统计性调试外,结果是不可预见的。

③测试是有打算的,并要进行测试设计,而调试是不受时刻约束的。

④测试是一个发觉错误、更正错误、从头测试的进程,而调试是一个推理进程。

⑤测试的执行是有规程的,而调试的执行往往要求程序员进行必要的推理及知觉的飞跃。

⑥测试常常由独立的测试组在不了解软件设计的前提下完成,而调试必需由了解详细设计的程序员完成。

⑦大多数测试的执行和设计可由工具支持,而调试时,程序员能利用的工具主若是调试器。

9:单元测试的要紧任务
1):模块接口测试2):模块局部数据结构测试3):模块中所有独立执行途径测试4):各类错误处置测试5)模块边界条件测试。

10:测试用例的大体原那么
1):利用成熟测试用例设计方式指导设计
2):测试用例的正确性
3):测试用例的代表性
4):测试结果的可判定性
5):测试结果的可再现性
6):足够详细,准确和清楚的步骤。

相关文档
最新文档