软件基础测试题Word文档下载推荐.docx
《软件基础测试题Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《软件基础测试题Word文档下载推荐.docx(8页珍藏版)》请在冰豆网上搜索。
8.不是软件实施活动的进入准则?
(D)
A.需求工件已经被基线化B.详细设计工件已经被基线化C.构架工件已经被基线化D.项目阶段成果及被基线化
9.确定单元测试指导的基本方针?
()(3个,选择其中不是的)
能够自身编译的最小程序块,单一过程/函数(独立),由一个人完成的小规模工作
10.对于自动化测试成本从高到底的排序,下列描述正确的是?
(A)(PPT6七章)(进行排序)
A.GUI,编译器,用户图形
11.软件测试是软件开发的重要环节之一。
按照软件开发过程可分为:
单元测试、集成测试、系统测试、域测试等。
12.软件测试的任务发现、改正软件错误(找错,修正)
13.下面哪一项测试步骤中需要进行局部数据结构测试?
(A)
A.单元测试B.集成测试C.确认测试D.系统测试
14.白盒测试是根据程序的(C)来选设计测试用例?
A.功能B.性能C.内部逻辑D.内部数据
15.单元测试的终止的标准(3个)(PPT47三章)
1.硬件资源不足或故障造成软件运行无法运行;
2.软件运行后无法正确显示;
3.所有功能测试均已经完成。
16.软件测试是对系统逆向求证的过程,集成测试对应的过程中单元测试的过程
A.需求设计B.概要设计C.详细设计D.编码实现
17.单元测试主要测试技术不包括?
(B)(PPT12三章)
A.白盒B.功能C.静态D.以上都不是
18.环路复杂度公式哪个不是?
()
19.如果一个产品中次严重缺陷基本完成修复并且通过了复测,这个阶段的产品是(B)
A.阿尔法版B.beta版C.正版D.以上都不是
20.自底向上方法需要写(A)
A.驱动程序B.桩程序C.驱动程序和桩程序D.两个都不是
21.(A)的目的是对最终软件系统进行全面的测试确保最终软件系统产品满足需求。
A.系统测试B.集成测试C.单元测试D.功能测试
22.测试用例的4个关键元素。
(1)被测单元模块初始状态声明,即测试用例的开始状态(仅适用于被测单元维持了调用中间状态的情况);
(2)被测单元的输入,包含由被测单元读入的任何外部数据值;
(3)该测试用例实际测试的代码,用被测单元的功能和测试用例设计中使用的分析来说明,如:
单元中哪一个决策条件被测试;
(4)测试用例的期望输出结果(在测试进行之前的测试说明中定义)。
23.目前主要的单元测试的方法(A.基本路径测试B.等价类划分/边界值分析测试C.覆盖测试D.循环测试E.数据流测试F.程序插桩测试G变异测试)从中选。
24.哪个方法根据输出输入依赖关系设计的测试用例?
A.路径B.等价类C.因果图D.归纳
25.有一组测试用例使得每一个被测试用例的分支覆盖至少被执行一次,它满足的覆盖标准(B)。
(PPT22二章)
A.语句覆盖B.判定覆盖C.条件覆盖D.路径覆盖
二、填空:
1.单元测试中对类进行测试有3个“定义—引用对”(方法内部定义-引用对方法间定义-引用对类内部定义-引用对)。
(PPt37三章)
2.测试的主要目标,不再只是找出其缺陷,而是证明其(性能)。
3.压力测试又称强度测试,是在(各种资源超负荷)情况下,观察系统的运行情况。
4.(缺陷跟踪工具)是管理工具使用最多的。
5.集成测试划分为5个阶段(制定集成测试的计划、设计集成测试、实施集成测试、执行集成测试、评估集成测试)。
6.根据软件生命周期中的定义,可以把自动化测试工具划分3大类(白盒测试工具、黑盒测试工具、测试管理工具)。
7.对类进行测试时,类之间的关系6类(关联泛化实现依赖聚合组合)。
每种不同符号来表示,并分别用(私有的“-”、公有的“+”、保护的“#”)三个关键字来修饰类。
8.白盒测试工具针对代码进行的工具,测试中发现的缺陷可以定义到代码级,根据测试工具原理的不同,又可以分为静态测试工具和动态测试工具。
9.黑盒测试工具包括(功能测试工具、性能测试工具)。
10.软件开发的基本过程(需求分析、设计、实现、测试、维护)。
11.单元测试的策略(自顶向下的单元测试策略、自底向上的单元测试策略和孤立的单元测试策略)。
12.集成测试的工作开展更多站在测试工作人员的角度上;
系统测试站在用户的角度上。
13.对面向对象来说,按照集成的粒度不同,可把集成测试分为(类间集成测试、类内集成测试)。
14.类测试用例中,基于3个标准(基于状态的覆盖率、基于限制的覆盖率和基于代码的覆盖率)。
(PPT13六章)
15.哪一个不属于增量式集成?
答案:
大爆炸集成
17.单元测试中对类进行三级测试(方法内部测试、方法间测试、类内部测试)PPT36三章
18.目前单元测试主要的方法:
基于路径测试,等价类划分/边界值分析测试,覆盖测试,循环测试,数据流测试,程序插桩测试,变异测试。
三、判断:
1.发现错误是软件测试的目的。
(错)
2.白盒测试可以找出软件遗漏功能和代码错误功能。
(PPT47二章)(错)
3.在设计测试用例时,应包括合理的应用条件和不合理的应用条件。
(对)
4.软件缺陷一定是由编码引起的错误。
5.Bata测试是软件多个用户在实际。
。
多个测试。
6.系统测试属白盒测试。
(黑盒)(错)
7.手工测试可以达到好的系统化测试。
8.功能测试属于白盒测试的技术范畴。
9.文档测试是对系统提交给用户的文档进行验证,并不是一般性的审查活动。
P355(对)
四、大题
1.计算环路复杂度方法哪些?
(要求写成3个公式,一个公式2分)
V(G)=封闭区域数+1
2.基于状态测试的主要步骤?
(PPT32三章)
①依据设计文档,或者通过分析对象数据成员的取值空间(笛卡尔积),得到被测试类的状态转移图;
②给被测试的类加入用于设置和检查对象状态的新方法,导出对象的逻辑状态;
③对于状态转移图中的每个状态,确定该状态是哪些方法的合法起始状态,即在该状态时,对象允许执行哪些操作;
④在每个状态,从类中方法的调用关系图最下层开始,逐一测试类中的方法;
⑤测试每个方法时,根据对象当前状态确定出对方法的执行路径有特殊影响的参数值,将各种可能组合作为参数进行测试。
3.Bug的种类有哪些?
需求阶段的BUG,分析设计阶段的BUG,设计阶段的BUG,实现阶段的BUG,配置阶段的BUG,短视将来的BUG,静态文档的BUG。
4.自动化测试的缺点?
(5点)
1、自动化测试不能取代手工测试,测试主要还是要靠人工的。
2、新缺陷越多,自动化测试失败的几率就越大。
3、工具本身不具有想象力
4、技术问题、组织问题、脚本维护
5、测试工具与其他软件的互操作性
5.选择手动和自动化测试,为了作出一个合理的决定,需要做哪些方面假设?
(7个)
1.拥有稳定的自动化测试技术支持。
2.两种极端的可能性:
一种就是无需人工干预的完全自动化测试,另一种就是只运行一次就废弃的人工测试。
3.自动化测试和手工测试都可行(但事实并非如此)。
4.测试是通过外部接口完成的(黑盒测试)。
5.不要求必须进行自动化测试。
6.测试已经设计好之后,再决定是否进行自动化测试。
7.有一定的时间用于完成测试,并且在这段时间里完全有可能把测试做好。
6.集成测试分析方法有哪些?
体系结构分析模块分析接口分析风险分析可测试性分析集成测试策略分析
7.编写类测试驱动程序的方法有很多种,以Java语言为例来说明,测试驱动程序设计的结构,并简要说明其优缺点。
(PPT15六章)
1.在main方法中写入需要运行的测试用例,即实现main方法,然后编译、执行该类。
缺点:
不利于维护和复用,交付时,逐个剔除代码
2.在类中实现一个静态测试方法,通过调用该测试方法来收集每个测试用例的执行结果。
同1.
3.实现独立的测试类,它的职责是执行并收集每个测试用例的结果。
优点:
可复用,支持回归测试
必须创建新类,关注被测试类的变化
8.增量式集成和非增量式集成的概念和举例。
非增量式测试:
就是分别对系统中每个模块进行单元测试,然后将所有模块按照层次结构组装到一起进行测试,最终得到所要求的软件。
例如:
增量式集成(或组装):
先对一个个模块进行模块测试,然后在组装过程中边连接边测试,以发现连接过程中产生的问题。
自顶向下集成和自底向上集成
9.制定集成测试计划时间,一般安排在概要设计评审通过后大约一个星期的时候
一、计划阶段
制定集成测试计划时间:
一般安排在概要设计评审通过后大约一个星期的时候,参考需求规格说明书、概要设计文档、产品开发计划时间表来制定。
二、设计阶段
制定集成测试设计时间:
一般在详细设计开始时,就可以着手进行。
可以把需要规格说明书、概要设计、集成测试计划文档作为参考依据。
10.列举出图中三个模块,写出全部模块执行路径,最后给出其MM路径(书162页)
1.源节点:
程序中的源节点是指程序执行开始或重新开始处的语句片断。
A:
1,5节点B:
1,3节点C:
1节点
2.汇节点:
汇节点是程序执行结束处的语句片断。
这里转移控制到其它单元的节点也是汇节点。
A:
4,6节点B:
2,4节点C:
5节点
3.模块执行路径
模块执行路径是以源节点开始、以汇节点结束的一系列语句,中间没有插入汇节点。
在图4-12中有七条模块执行路径:
图4-12跨三个单元的MM-路径
模块执行路径如下:
MEP(A,1)=〈1,2,3,6〉
MEP(A,2)=〈1,2,4〉
MEP(A,3)=〈5,6〉
MEP(B,1)=〈1,2〉
MEP(B,2)=〈3,4〉
MEP(C,1)=〈1,2,4,5〉
MEP(C,1)=〈1,3,4,5〉
4.消息
消息是一种程序设计语言机制,通过这种机制可以把控制从一个单元转移到另一个单元。
5.MM-路径(MethodMessagePath)是穿插出现模块执行路径和消息的序列。
如图4-12中的粗线所示,代表模块A调用模块B,模块B调用模块C,这就是一个MM-路径,可用图4-13表示。
对于传统软件来说,MM-路径永远是从主程序开始,在主程序中结束。
MM-路径如下:
11.设一个控制图如下,请给出其环路复杂度和基本路径。
环路复杂度:
5
基本路径:
路径1:
1—2—3—5—6—12—13—15
路径2:
1—2—4—5—6—12—13—15
路径3:
1—2—3—5—7—8—13—15
路径4:
1—2—4—5—7—8—13—15
路径5:
1—2—3—5—7—9—10—14—13—15
路径6:
1—2—4—5—7—9—10—14—13—15
路径7:
1—2—3—5—7—9—11—14—13—15
路径8:
1—2—4—5—7—9—11—14—13—15
12.软件测试活动的生命周期
测试周期分为计划、设计、实现、执行、总结。
其中:
计划:
对整个测试周期中所有活动进行规划,估计工作量、风险,安排人力物力资源,安排进度等;
设计:
完成测试方案,从技术层面上对测试进行规划;
实现:
进行测试用例和测试规程设计;
执行:
根据前期完成的计划、方案、用例、规程等文档,执行测试用例。
总结:
记录测试结果,进行测试分析,完成测试报告。
13.三明治集成方法
1.确定以哪一层为界来决定使用三明治集成策略(在4-7中,我们确定以B模块为界);
2.对模块B及其所在层下面的各层使用自底向上的集成策略;
3.对模块B所在层上面的层次使用自顶向下的集成策略;
4.把模块B所在层各模块同相应的下层集成;
5.对系统进行整体测试。
14.集成测试可看着是体系结构分析工作基础之上的细化。
可从哪几个角度进行模快分析。
1)确定本次要测试的模块;
2)找出与该模块相关的所有模块,并且按优先级对这些模块进行排列;
3)从优先级别最高的相关模块开始,把被测模块与其集成到一起;
4)然后依次集成其他模块。