当前位置:文档之家› 软件测试期末考试重点

软件测试期末考试重点

软件测试期末考试重点
软件测试期末考试重点

1.软件测试的概念:

①软件测试就是一系列活动,这些活动是为了评估一个程序或软件系统的特性或能力,并确定其是否达到了预期结果。(正面)

②软件测试是为了发现错误而执行的一个程序或者系统的过程。(反面)

3.软件测试的其他观点:最突出的观点就是风险的观点和经济的观点。

①风险的观点:软件测试就是对风险的不断评估,引导软件开发的工作,进而将最终发布的软件所存在的风险降到最低。

②经济的观点:以最小的代价获得最高的软件产品质量。

4.风险的观点和经济的观点的联系:

①测试的风险观点不断提醒我们,在尽力做好测试工作的前提下,工作有所侧重,在风险和开发周期限制上获得平衡,这也体现了测试的经济观点。

②测试的经济观点正是风险观点在软件开发成本上的体现,通过风险的控制来降低软件开发成本。

③经济观点也要求软件测试尽早展开工作,发现缺陷越早,返工的工作量就越小,所造成的损失就越小。

5.软件测试和开发的关系:

软件测试和软件开发在整个软件开发生命周期中交互协作,自始至终一起工作,共同致力于同一个目标——按时、高质量地完成项目。

6.V 模型呈现了测试和开发的关系:

*V 模型从左到右描述了基本的开发过程和测试行为,非常明确地标注了测试过程中存在的不同类型的测试,并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系,即从4个层次完成软件的验证,即对需求、系统架构设计、详细的产品设计和代码的验证。

7.V 模型的4个层次:

①需求验证对应验收测试,客户需求的确认测试;

②系统架构设计的验证对应系统非功能性测试; ③产品详细设计的验证对应功能测试; ④代码的验证对应单元测试和集成测试。

8.V 模型的优点:

①分层次进行测试,有助于定位和修改软件缺陷。 ②尽早编制测试计划和设计测试用例,在一定程度上使测试工作与开发工作并行进行,节省了项目后期的测试时间。

9.V 模型的缺点:

①忽视静态测试。 ②缺陷反馈周期长。

③测试与开发的并行程度不高。

10.V 模型与W 模型的对比?

W 模型是V 模型的改进,针对V 模型做出了两点改进:

①开发和测试形成两条独立且并行的工作线索,测试工作贯穿软件生命周期。

②在测试工作中增加了评审环节,将针对文档的静态测试作为测试对象。 *这也是W 模型的两个要点。

11.几个重要原则:

①有限原则:穷尽测试是不可行的。

②Pareto 原则(80/20原则):80%的软件缺陷包含在20%的模块中,用户

需求获取

编码

验收测试

80%的时间在使用软件20%的功能。应重点测试20%复杂度最高的模块,重点测试用户20%最常用的功能。

③尽早原则:应尽早进行测试,缺陷发现的越早,纠正缺陷的代价越小。

12.软件质量保证活动的概念:

软件质量保证(SQA)活动是通过对软件产品有计划地进行评审和审计来验证软件是否合乎标准的系统工程,通过协调、审查和跟踪以获取有用信息,形成分析结果以指导软件过程。

13.SQA与软件测试之间的关系:

①SQA与软件测试之间相辅相成,既存有包含关系又存有交叉关系。

②SQA指导、监督软件测试的计划和执行,督促测试工作的结果客观、准确和有效,并协助测试流程的改进。

③软件测试是SQA的重要手段之一,为SQA提供所需的数据,作为质量评价的客观依据。

④她们的相同点在于二者都是贯穿整个软件开发生命周期的流程,区别在于SQA是一项管理工作,侧重于对流程的评审和监控,而测试是一项技术性工作,侧重对产品进行评估和验证。

14.测试驱动开发(TDD)的思想:

测试在先,编码在后的开发方法。

15.软件质量的定义:

软件产品满足规定的和隐含的与需求能力有关的全部特征和特性,它包括:

①软件产品质量满足用户要求的程度;

②软件各种属性的组合程度;

③用户对软件产品的综合反映程度;

④软件在使用过程中满足用户要求的程度。

16.RUP将软件质量定义为三个维度的质量:

①功能;②性能;③可靠性。

17.软件产品质量可以归纳为以下几个属性:

①功能性;

②可用性;

③可靠性;

④性能;

⑤容量;

⑥可测量性;

⑦可维护性;

⑧兼容性;

⑨可扩展性。

18.黑盒测试和白盒测试的概念:

①黑盒测试(数据驱动测试方式):将被测程序视为一个不能打开的黑盒,在不考虑程序内部结构和内部特性的情况下,依据规格说明直接设计测试用例和指定预期结果。

②白盒测试(结构化测试或逻辑驱动测试):将被测程序打开,分析源代码中的控制流和数据流的结构和特性,并依据分析结果进行测试用例的设计,然后根据规格说明指定预期结果。

20.软件测试的4个级别:

①单元测试;②集成测试;③系统测试;④验收测试。

21.基于直觉和经验的方法:

①Ad-hoc测试方法:即自由测试,强调测试人员根据自己的经验,不受测试用例的束缚,放开思路、灵活地进行各种测试。

②ALAC测试方法:是一种基于客户使用产品的知识开发出来的测试方法,它的出发点是著名的Pareto 80/20规律

③错误推测法:有经验的测试人员往往可以根据自己的工作经验和直觉推测出程序可能存在的错误,从而有针对地进行测试,即错误推测法。

22.基于输入域的方法:

①等价类划分法:

(1)基本思想:用一组有限的数据去代表近似无限的数据

(2)概念:将每个输入域划分为若干等价类,然后从每个等价类中选择代表值构成测试用例。

(3)等价类:输入域的一个特定子集,该子集中的各个值对于揭露程序中的错误是等效的。

(4)有效等价类和无效等价类:

·有效等价类:指输入安全满足程序输入的规格说明、有意义的输入数据所构成的集合。

·无效等价类:指不满足程序输入要求或者无效的输入数据构成的集合。(5)等价类划分的步骤:

·识别等价类

·组合等价类

·选取测试用例

(6)识别等价类的方法;

·基于接口:对每个输入变量独立地识别等价类,然后再依据一定的要求组合这些等价类。

·基于功能:依据程序的功能特征在输入变量的组合空间中识别等价类。(7)基于接口的等价类识别方法有如下三种常用的测试用例覆盖准则:·弱覆盖准则:每个等价类至少覆盖一次。

·强覆盖准则:每个等价类组合至少覆盖一次。

·传统覆盖准则:每个有效等价类至少覆盖一次。为每个无效等价类分别设计一条测试用例,其中一个变量取无效值,其他变量取有效值。

②边界值分析法:

(1)基本思想:程序往往在输入输出的边界值情况下发生错误,对边界以及边界附近的值进行测试。

(2)概念:在输入或输出变量的边界上以及边界附近选取值构成测试用例。(3)边界值分析的步骤:

·确定边界值

·选取测试用例

(3)五点覆盖准则:测试用例取最小值、略大于最小值、正常值、略小于最大值、最大值。该覆盖准则重点在于测试有效值。

(4)七点覆盖准则:测试用例取略小于最小值、最小值、略大于最小值、正常值、略小于最大值、最大值、略大于最大值。该覆盖准则全面测试有效值和无效值。

(5)假设有n个输入变量,每个变量有两个边界值。

·如果采用五点覆盖准则,需要设计4n+1条测试用例。

·如果采用七点点覆盖准则,需要设计6n+1条测试用例。

23.基于组合及其优化的方法:

①判定表方法:

(1)概念:以判定表形式完成对输入条件的组合设计,列出每种条件组合对应的动作,然后为每种条件组合设计测试用例。

(2)判定表结构

·条件桩:列出问题的所有条件,顺序无关紧要。

·动作桩:列出问题的所有动作,顺序无关紧要。

·条件项:列出针对条件的具体取值。

·动作项:列出条件项的各种组合情况下应该采取的动作。

·规则:条件组合的特定取值及其相应的动作项,即判定表中贯穿条件项和动作项的一列。

图解:

(3)判定表法的步骤: 1)初始化判定表

·列出所有的条件桩和动作桩。

·填入条件项,列举所有条件的组合。 ·填入动作项,确定初始判定表。

2)化简判定表:消除矛盾的规则,合并具有相同动作的相似规则。 3)选取测试用例:为每条规则设计一条测试用例。

②因果图法:

(1)概念:以输入的条件组合作为原因,以输出作为结果,采用图形的方式描述因果逻辑关系。然后,将因果图转换为判定表,再依据判定表设计测试用例。 (2)因果图的记号

1)用圆圈表示原因和结果,用连线表示因果关系。 2)因果之间的布尔关系:

·恒等(Identify ):如果原因为真,则结果也为真;如果原因为假,则结果E 也为假。

·非(Not ):如果原因为真,则结果为假;如果原因为假,则结果为真。 ·或(Or ):如果至少一个原因为真,则结果为真;否则,结果为假。 ·与(And ):如果所有原因为真,则结果为真;否则,结果为假。 3)“或”和“与”可以接收任意数量的输入。 *图示:

C ∧

E 恒等

C E

C 1C 2C 3

E

C 1

C 2

E

(3)因果图的记号

1)原因之间的约束关系

·E 约束(Exclusive ,排他):至多有一个原因为真,即不能有两个或两个以上原因同时为真。

·I 约束(Inclusive ,包含):至少有一个原因为真,即不能所有原因都为假。 ·O 约束(One and Only ,唯一):有且仅有一个原因为真。 ·R 约束(Require ,要求):C1为真则C2必须为真。

2)E 、I 和O 都可以约束两个或两个以上原因,而R 只能约束两个原因。 *图示:

C 1

C 2

C 1排他

E

C 2C 3

I

包含

C 1

C 2

唯一

O

R

要求

(4)因果图的记号

1)结果之间的约束关系:M 约束(Mask

,屏蔽):C1为真则C2必须为假。 *图示:

M

屏蔽

(5)因果图法的步骤 1)分析

·分析规格说明,寻找原因和结果。

·分析规格说明,寻找原因组合与输出之间的关系、原因之间的约束关系,以及结果之间的约束关系。 2)关联:绘制因果图。

3)转换:将因果图转换为判定表。

4)输出:为判定表的每条规则设计一条测试用例。

③Pair-wise方法:

(1)概念:又称为“成对组合测试”或“两两组合测试”,使测试用例能够覆盖所有输入变量的两两组合。

④正交试验法:

(1)概念:依据Galois理论,从大量的(试验)数据(测试用例)中挑选适量的、有代表性的点(条件组合),从而合理地安排试验(测试)的一种科学试验设计方法。

(2)正交试验法的步骤

·确定因素和水平

·选择正交表

·选取测试用例

(3)因素:影响测试结果的条件,通常表现为输入变量。

(4)水平:每个因素可能的取值。

(5)在确定因素和水平时,可以依据作用的重要性、使用频率等进行适当取舍。(6)正交表结构

·次数:安排的正交试验次数,即测试用例数。表现为正交表的行数。

·因素数:影响试验结果的因素数,即输入变量数。表现为正交表的列数。

·水平数:每个因素的取值个数。正交表中每个因素的取值为0~(水平数-1)。

·正交表的记号:

L次数(水平数因素数)

(7)两种正交表:

·同水平正交表:每个因素的水平数相同。如:

·混合正交表:各因素的水平数可能不同。如:

(8)正交表的正交性

·整齐可比性:每个因素的各水平在试验中出现的次数相同。

·均匀分散性:任何两个因素的各种水平的不同组合在试验中都出现,并且出现的次数相同。

24.基于逻辑覆盖的方法:

①逻辑覆盖法:是一种按照程序内部逻辑结构设计测试用例的方法,目的是要测试程序中的判定和条件。

②判定和条件的区别:

判定:使程序控制流发生分支的谓词。通常以逻辑表达式的形式出现。

条件:用于构成判定的谓词,是判定的组成部分。通常以关系表达式、布尔变量或函数调用的形式出现。

③覆盖准则:

(1)语句覆盖准则:每条可执行语句至少执行一次。

(2)判定覆盖准则:每个判定的真分支和假分支至少被执行一次。

(3)条件覆盖准则:每个判定的每个条件真和假的取值都至少满足一次。 (4)判定条件覆盖准则:每个判定的真分支和假分支至少被执行一次,同时每个判定的每个条件真和假的取值都至少满足一次。

(5)条件组合覆盖准则:每个判定中的所有可能的条件组合都至少出现一次。注意:只考虑每一个判定内部的条件组合,无需考虑所有条件的组合。 ④逻辑覆盖法的一般步骤:

(1)绘制流程图 (2)分析覆盖对象 (3)组合覆盖对象 (4)选取测试用例

⑤逻辑覆盖准则之间的关系:

语句覆盖 判定覆盖 条件覆盖

判定条件覆盖

条件组合覆盖

25.路径分析法(基本路径覆盖): ①概念:首先分析源代码的控制结构的复杂性测度,然后以该测度作为指导获得程序独立路径的基本集,最后用该基本集导出测试用例。

②路径覆盖准则:每条可执行语句和每个条件的真假至少被执行一次。 ③路径分析法的步骤: (1)绘制控制流图 (2)计算圈复杂度 (3)确定独立路径 (4)设计测试用例

④控制流图(CFG ):描述程序控制流的一种图示方法。用圆圈表示程序的语句,称为节点;用箭头表示程序的控制流向,称为边。 ⑤圈复杂度:源程序控制结构复杂性的定量测度,是确保程序的每条可执行语句和每个条件的真假至少被执行一次所应经历的独立路径数目的上界。 ⑥圈复杂度的计算方法:设G 是程序的控制流图,G 的圈复杂度V(G)计算方法有三种:

(1)V(G)=G 的区域数目。区域由节点和边包围起来,是封闭的。计算区域数目时应包含一个外部区域。

(2)V(G)=边数-节点数+2。 (3)V(G)=分支节点数+1。 例如:

⑦独立路径:

(1)概念:从入口节点到出口节点,引入至少一条新语句或新条件的路径。从控制流图看,独立路径应该至少引入一条新的边。

(2)寻找独立路径可采用对已知独立路径中分支节点逐个翻转的方法。

26.TMap NEXT :

①概念:TMap NEXT (测试管理方法)是一种业务驱动的、基于风险策略的、结构化的测试方法体系。

②目的:更早的发现缺陷,以最小的成本,有效地、彻底地完成测试任务,以减少软件发布后的支持成本。

③Tmap 所定义的测试生命周期由以下6个阶段组成: (1)计划和控制阶段; (2)基础设施阶段; (3)准备阶段; (4)说明阶段; (5)执行阶段; (6)完成阶段。

④TMap 通过下列三项基石:O 、I 、T ,支撑整个生命皱起(L ),从而构成其稳固的方法体系。

(1)与软件开发生命周期一致的测试活动生命周期(L ),它描述了在测试过程中的某些特殊阶段需要实施的活动。

(2)坚实的组织融合(O ),它强调测试小组必须融入到项目组织中,而且每个测试成员都必须被分配任务和承担责任。

(3)正确的基础设施和工具(I ),它说明为了获得最优化的结果,需要适当的基础设施和工具。

V(G) = 区域数 = 5

V(G) = 边数-节点数+2 = 11 – 8 + 2 = 5 V(G) = 分支节点数+1 = 4 + 1 = 5

(4)可用的技术(T),是指支持测试过程的技术,这些技术用于定义基于风险的测试策略,支持有计划的测试过程,研究和审查测试基准,详细说明测试用例以及如何提交报告。

28.脚本测试和探索式测试:

①脚本测试(ST)的概念:在缺乏可执行程序时编制测试计划,设计测试用例,开发测试框架或测试脚本;当可执行文件构建完成后,运行测试用例进行测试。即先设计测试,再执行测试。

②探索式测试(ET):面对可执行程序,同时开展学习软件、设计测试用例、执行测试和测试结果分析等活动。即在程序运行的具体情境中一边思考一边测试。

③脚本式测试和探索式测试的融合:

(1)ST为主,ET为辅:

在传统开发中,有完备的文档和充分的时间进行脚本式测试,探索式测试可作为发现隐藏较深缺陷的手段,或作为学习软件的途径。

(2)ET为主,ST为辅:

在敏捷开发中,需求变化频繁、迭代周期短、缺乏完备的文档,因此适合以探索式测试为主,以手工方式进行测试。而在编码之前的测试用例可以采用脚本式测试进行设计,便于自动化测试。

(3)ET与ST相互融合。

29.依据对软件测试关注焦点的不同,Bret Pettichord归纳出五个软件测试学派:

①分析学派

②标准学派

③质量学派

④上下文驱动学派

⑤敏捷学派

30.五个软件测试学派的特点(要做到能够识别各学派)

①分析学派:

(1)软件是逻辑产品。

(2)测试是数学和计算机科学的分支(客观、严谨、完备)。

(3)测试技术具有逻辑形式或数学形式。

(4)测试是技术性工作。

(5)关键问题:选择何种技术?

②标准学派:

(1)软件是工程化的产品。

(2)测试是对工程进度的评价。

(3)测试是遵守既定的标准和规范。

(4)测试是可管理的(有计划、可预测、可复制)。

(5)测试的成本低廉。

(6)关键问题:选择何种标准?

③质量学派:

(1)软件是需要质量保证。

(2)测试应站在用户的立场上。

(3)测试是评价软件开发是否严格遵守既定的过程。

(4)测试是监督开发员遵守既定的过程。

(5)关键问题:是否遵守既定的过程?

④上下文驱动学派:

(1)软件是人造产品,人为软件设定了上下文。

(2)测试是在上下文中寻找缺陷。

(3)测试是技巧性很强的心理活动。

(4)测试是涉及多学科的综合活动。

(5)测试为软件项目提供更多的信息。

(6)关键问题:当下最具价值的测试用例是什么?

⑤敏捷学派:

(1)软件是持续不断的对话。

(2)测验是验证开发工作是否完成,强调自动化测试。

(3)TDD是其典型代表。

31.基于风险的测试策略:

①概念:评估测试的优先级,先进行高优先级的测试,如果时间和精力不够,低优先级的测试可以暂时先不做。即根据事情的轻重缓急来决定测试工作的重点和工作顺序。

②影响测试优先级的因素主要是:

(1)该功能出问题对用户的影响有多大?对用户的影响越大,其优先级越高。(2)出问题的概率有多大?概率越大,优先级越高。这种概率受功能模块的复杂性、代码质量的影响。复杂性越高或代码质量越低,问题发生的概率就越大。

③软件测试的风险主要有两个来源:

(1)完全的覆盖度很难达到

(2)规格说明存在错误或不够全面

32.基于缺陷模式的测试(DPBT):

①概念:归纳过去发现的各种具体缺陷并抽象出共性,生成缺陷模式。然后,根据软件可能存在的缺陷进行匹配,以发现被测软件中存在的类似缺陷。

②缺陷模式分类:

(1)故障模式

(2)安全漏洞模式

(3)差性能模式

(4)并发缺陷模式

(5)不良习惯模式

(6)代码国际化模式

(7)易诱骗代码模式

③DBPT的测试过程:

(1)预处理

(2)词法分析

(3)语法分析

(4)抽象语法树生成

(5)控制流图生成

(6)IP扫描

(7)人工确认

33.测试过程改进:

①两个模型:

(1)软件能力成熟度模型(SW-CMM)

(2)过程成熟度集成模型(CMMI)

*用途:

1)评价作用,测试成熟度;

2)帮助测试组改进。

②几个专业词汇:

(1)CMM软件评估和测试(KPA,关键过程域)

(2)测试支持模型(TSM)

(3)测试能力成熟度模型(TCMM)

(4)测试成熟度模型(TMM)

③TMM将测试过程分为5个等级:

(1)初始级;

(2)定义级;

(3)集成;

(4)管理&度量;

(5)优化

36.静态测试——编码的标准和规范:

①至少有以下三个重要原因可以说明要坚持标准和规范:

(1)可靠性;

(2)可读性和维护性;

(3)移植性。

②标准:每个开发项目由于自身特点都必须符合一组标准,除必须符合计算机语言标准外,还需要符合相应的行业标准。

③风格:源程序的风格统一标志着可维护性、可读性,是软件项目的一个重要组成部分。如果没有一个共同的标准可以遵守,编码风格各异,程序可维护性差、可读性也很差。

37.代码评审:

①代码评审工作主要检查源代码的如下三个方面:

(1)缺陷模式

(2)编码标准

(3)编码风格

②概念:为了验证源代码是否符合规格说明书,以及检查源代码是否遵守特定编码标准和编码风格而召开的技术性会议。

③代码评审的三种形式:

(1)同行评审(互查):比较自由

(2)走查:较为正式

(3)会议审查(会审):最正式的代码审查方式

④三种评审形式的根本区别在于评审的正式程度不同:

(1)正式程度越高,发现缺陷的效能越高。

(2)正式程度越高,评审成本越高。

⑤会议审查的步骤:

(1)会议开始前分发评审材料,审查小组首先熟悉这些材料。

(2)开发小组逐句阐明程序逻辑,其他参会人员提出问题。

(3)利用通用检查列表指导会议讨论。主持人负责讨论沿着建设性方向进行,其他人员则集中注意力发现缺陷。

(4)记录所有已确定的缺陷,在会议之后形成评审报告,提交程序的开发员并存档。报告中应写明缺陷的位置、类型、影响范围和原因等。

(5)审查小组根据审查结果对程序进行评估,并决定是否重新进行审查。(6)审查会议结束后指派专人(如主持人)负责缺陷修改跟踪。

38.动态测试——驱动程序和桩程序

①驱动程序的概念:也称驱动模块,用以模拟被测模块的上级模块,能够调用被测模块。

②桩程序的概念:也称桩模块,用以模拟被测模块工作过程中所调用的下层模块,由被测模块调用。

③驱动程序与桩程序的区别:

(1)驱动程序是被测模块的上级模块,可以调用被测模块;而桩程序是被测模块的下层模块,由被测模块调用。

(2)在测试过程中,驱动模块接收测试数据,调用被测模块并把相关的数据传送给被测模块;而桩模块一般只进行很少的数据处理。

39.回归测试:

①回归缺陷的概念:对软件进行修改而导致其他受影响区域出现新的缺陷。

②回归测试的概念:在对程序进行修改后,保证原有功能正常的一种测试策略和方法。

③回归测试的策略:

(1)再测试全部用例:运行测试用例库中全部测试用例。优点是风险低,缺点是成本高

(2)基于操作剖面选择测试:优先选择针对重要功能或用户频繁使用功能的测试用例。

(3)基于风险选择测试:优先选择受修改影响可能性大的功能的测试用例。(4)再测试修改的部分:仅限于测试修改的模块和它的接口。

40.性能测试:

①概念:为了发现系统性能问题或获取系统性能相关指标(如运行速度、响应时间、资源使用率等)而进行的测试。

②系统性能指标:

(1)请求响应时间;

(2)事务响应时间;

(3)数据吞吐量;

③性能问题的三种类型:

(1)资源耗尽

(2)资源泄露

(3)资源瓶颈

④软件性能指标的两个方面:

(1)系统行为表现(直接)

(2)系统资源的利用率(简洁)

⑤性能测试的类型:

(1)性能验证测试:验证系统是否达到实现已定义的系统性能指标,能够满足系统的性能需求。

(2)性能基准测试:在系统标准配置下获得有关的性能指标数据,作为将来性能改进的基准线。

(3)性能规划测试:在多种特定的环境下,获得不同配置的系统性能指标,从而决定在系统部署时采用什么样的软、硬件配置。

(4)负载测试:测试软件在不同的负载下的行为表现。

(5)容量测试:确定软件在保持主要功能正常运行的情况下某项性能指标的极限值。

(6)压力测试(高负载测试):超大负载或长时间进行软件测试,以验证被测系统的性能、可靠性、稳定性。

·破坏性压力测试:被测系统在超大负载情况下导致崩溃。

·稳定性压力测试:在一定的负载下长时间持续运行系统。

(7)峰谷测试:采用负载忽高忽低的方式进行测试,有助于发现资源泄露问题。

⑥系统负载可以看作是“并发用户并发数量+思考时间+每次请求发送的数据量+负载模式”

⑦压力测试的加压方式:

(1)长时间;

(2)超大负荷。

41.安全性测试方法:

①人们习惯将安全性测试分为静态测试、动态测试,即静态的代码分析方法和动态的渗透测试方法。

(1)静态的代码分析方法:如基于缺陷模式的方法,是常用的测试方法,可以早期解决潜在的安全问题。

(2)动态的渗透测试方法:特点是真实有效,找出来的问题一般更为严重。

②安全性测试方法的另一种分类:

(1)基于漏洞的方法:从软件内不考虑软件的安全性,识别软件的安全漏洞。

(2)基于威胁的方法:从软件外部考察软件的安全性,识别软件面临的安全威胁并测试其是否能够发生。

42.兼容性测试——向前和向后兼容:

①向后兼容:是指可以使用以前版本的软件;

②向前兼容:是指可以使用未来版本的软件。

43.可靠性测试:

①软件可靠性主要包含三个要素:

(1)规定的时间;

(2)规定的运行环境;

(3)规定的功能。

②一般软件可靠性模型分为两大类:

(1)软件可靠性结构模型:依据系统结构逻辑关系,对系统的可靠性特征及其发展变化规律做出可靠性的评价。

(2)软件可靠性预计模型:用来描述软件失效与软件缺陷的关系,借助这类模型可以对软件的可靠性特征做出定量的预计或评估。

44.α测试和β测试:

①α测试:是指软件开发公司组织内部人员模拟各类用户对即将面市软件产品(称为α版本)进行测试,试图发现错误并修正。

②β测试是指软件开发公司组织各方面的典型用户在日常工作中实际使用β版本(经过α测试调整的软件产品称为β版本),并要求用户报告异常情况、提出批评意见。

45.用户界面和可用性测试:

①好的用户界面包含7个要素:

(1)符合标准和规范;

(2)直观性;

(3)一致性;

(4)灵活性;

(5)舒适性;

(6)正确性;

(7)实用性。

46.软件测试自动化的优势:

①自动运行的速度快、执行效率高;

②永不疲劳;

③测试结果准确;

④可靠;

⑤可复用性;

⑥特别的能力。

47.自动化测试给软件测试带来的益处:

①缩短软件开发测试皱起;

②更高质量的产品;

③软件过程更规范;

④测试效率高、充分利用硬件资源;

⑤节省人力资源;

⑥增强测试的稳定性和可靠性;

⑦提高软件测试的准确度和精确度,即提高测试的质量;

⑧手工不能做的事情,软件测试工具可以完成;

⑨高昂的团队士气。

48.脚本技术(要求识别几种常见的脚本):

①线性脚本:录制手工执行的测试用例所得到的脚本,包含所有的击键、移动、输入数据等,所有录制的测试用例都可以得到完整的回放。

②结构化脚本:类似于结构化程序设计,具有各种逻辑结构,包括选择性结构、分支结构、循环迭代结构,而且具有函数调用功能。结构化脚本具有很好的可重用性、灵活性,所以结构化脚本易于维护。

③数据驱动脚本:将测试脚本和数据分离开来,测试输入数据存储在独立的文件中,而不是存储在脚本中。

④关键字驱动脚本:看上去非常像手工测试的用例,脚本用一个简单的表格来表示。是数据驱动脚本的逻辑扩张,实际上是封装了各种基本的操作,每个操作由相应的函数实现,而在开发脚本时,不需要关心这些基础函数,直接使用已定义好的关键字,这样的好处是脚本编写效率会有很大的提高,脚本维护起来也很容易。

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

单项选择题:共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)只使用白盒测试。

软件测试知识点总结

软件测试知识点总结 第一次课10.7软件测试概述 一软件测试定义:使用人工或者自动的手段来运行或测定它是否满足规定的需求,或弄预期结果与实际结果之间的差别。 二软件测试的分类 1.按照开发阶段划分 a)单元测试:模块测试,检查每个程序单元嫩否正确实现详细设计 说明中的模块功能等。 b)集成测试:组装测试,将所有的程序模块进行有序、递增的测试, 检验程序单元或部件的接口关系 c)系统测试:检查完整的程序系统能否和系统(包括硬件、外设和 网络、系统软件、支持平台等)正确配置、连接,并满足用户需 求。 d)确认测试:证实软件是否满足特定于其用途的需求,是否满足软 件需求说明书的规定。 e)验收测试:按项目任务或合同,供需双方签订的验收依据文档进 行的对整个系统的测试与评审,决定是否接受或拒收系统。 2.按照测试技术划分 白盒测试:通过对程序内部结构的分析、检测来寻找问题。检查是否所有的结构及逻辑都是正确的,检查软件内部动作是否按照设计说明的规定正常进行。--结构测试 黑盒测试:通过软件的外部表现来发现错误,是在程序界面处进行

测试,只是检查是否按照需求规格说明书的规定正常实现。 灰盒测试:介于白盒测试与黑盒测试之间的测试。 3 按照测试实施组织划分:开发方测用户测试第三方测试 4 是否使备测软件运行:静态测试动态测试。 课后作业:1.软件测试与调试的区别? (1)测试是为了发现软件中存在的错误;调试是为证明软件开发的正确性。 (2)测试以已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试一般是以不可知的内部条件开始,除统计性调试外,结果是不可预见的。 (3)测试是有计划的,需要进行测试设计;调试是不受时间约束的。(4)测试经历发现错误、改正错误、重新测试的过程;调试是一个推理过程。 (5)测试的执行是有规程的;调试的执行往往要求开发人员进行必要推理以至知觉的"飞跃"。 (6)测试经常是由独立的测试组在不了解软件设计的条件下完成的;调试必须由了解详细设计的开发人员完成。 (7)大多数测试的执行和设计可以由工具支持;调式时,开发人员能利用的工具主要是调试器。 2.对软件测试的理解? 软件测试就是说要去根据客户的要求完善它.即要把这个软件还

软件测试期末考试试题及答案

一,判断 1 √ 2.× 3.√ 4.× 5. × 6. ×7. ×8. ×9.√10. ×二,选择 1. D 2. D 3. B 4. B 5. B 6. A 7. D 8. B 9. C 10. A 三填空 1. 测试计划、测试用例 2. 稳定性测试、负载测试、压力测试 3. 非增量是集成测试自顶向下增量式测试、自底向上增量式测试 4. 回归 5. 软件需求 四简答题(30分) 1.试描述软件测试的定义(3分) 答:利用手工或者自动化的方式,按照测试方案对系统执行测试用例的过程叫做软件测试。 2.什么是软件缺陷(4分) 答:满足以下条件的问题都叫缺陷: 软件未达到产品说明书中已标明的功能 软件出现了产品说明书中指明不会出现的错误 软件功能超出了产品说明书指明的范围 软件未达到产品说明书虽未指出但应达到的目标 软件测试员认为软件难以理解,不易使用,运行速度缓慢,或者最终用户认为该软件使用效果不好。 3.常见的黑盒测试用例的设计方法并分别简单介绍一下各自的思想。(8分)答:等价类划分:等价类划分法是一种重要的、常用的黑盒测试方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。 边界值分析:对输入输出的边界值进行测试的一种黑盒测试方法。 决策表法:决策表是分析和表达多逻辑条件下执行不同操作的情况的工具 因果图分析法:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。 错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对

性的设计测试用例的方法。 4. 列举常见的系统测试方法。答出来5个即可。(5分) 答:恢复测试 安全测试 强度测试 性能测试 正确性测试 可靠性测试 兼容性测试 Web测试 5.文档测试主要测试哪些内容答出来5点即可(5分) 答:(1)检查产品说明书属性 (2)检查是否完整 (3)检查是否准确 (4)检查是否精确 (5)检查是否一致 (6)检查是否贴切 (7)检查是否合理 (8)检查代码无关 (9)检查可测试性 6. 单元测试主要测试那几方面的问题(5分) 答:模块接口、局部数据结构、边界条件、独立的路径和错误处理。五,设计题 1.

软件测试期末考试含答案

西华师范大学计算机学院2013年度期末测试 软件测试A卷(11+18+12+19+40=100分) 一、单项选择(每空1分,共11分) 1、执行函数测试时,当多次调用底层函数,底层模拟器的"模拟值"输入栏可设 定多个模拟值,一次最多可设置( C)个模拟值。 A、1 B、3 C、6 D、11 2、当函数测试存在失败断言时,在白盒覆盖率信息窗口中VU会显示一个 ( B )的条块来提示,没有失败断言时,会显示一个( A )的条块来显示; 在逻辑结构窗口中,未覆盖的路径用( B)画出,已覆盖的路径用( A)画出,未覆盖的分支是(D)的条块。 A、深绿色 B、深红色 C、浅蓝色 D、粉红色 E、浅绿色 3、VU导出的测试报告文件格式为:( C ),表格化测试用例数据导出的文 件格式为:(E) A、*.pdf B、*.txt C、*.htm D、*.csv E、*.xls F、*.doc 4、在软件生命周期中的任何一个阶段,只要软件发生了改变,就可能给该软件 带来新的问题。软件的改变可能是源于发现错误并做好了修改,可能是因为在集成或维护阶段加入了新的模块,为了验证软件修改后的正确性需要进行(E)。 A、白盒测试 B、黑盒测试 C、单元测试 D、性能测试 E、回归测试 F、验收测试 5、当用底层模拟器去模拟被测单元调用的底层函数的输出函数,并且此输出参 数为指针数据类型,应该设置此参数的模拟值为(D)。 A、指针值 B、引用的地址 C、指针指向的数据类型的值 D、NULL 6、当用底层模拟器去模拟被测单元调用的底层函数的返回值,并且此输出参数 为指针数据类型,应该设置此参数的模拟值为(C)。 A、指针值 B、引用的地址 C、指针指向的数据类型的值 D、NULL 二、多项选择(每空2分,共18分) 1、底层模拟能很好的解决(BCF )。 A、集成测试问题 B、装代码和数据失真 C、测试不可控 D、性能测试问题 E、内部输出的模拟 F、模拟参数为复杂数据类型,单元测试时难以初始化 2、底层模拟器能够模拟( ABCEH)。 A、底层函数的参数 B、底层函数的返回值 C、全局变量 D、函数改写文件中的数据 E、成员变量 F、函数改写数据库中的数据 G、内部输出H、调用次数 3、执行函数测试后,源代码窗口能够标识出未覆盖的(BCD)。逻辑结构图窗口

软件测试复习题_带答案

软件测试复习题 一、判断 (01)测试是为了验证软件已正确地实现了用户的要求。错 (02)白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。对(03)白盒测试不仅与程序的内部结构有关,还要考虑程序的功能要求。错 (04)黑盒测试的测试用例是根据程序内部逻辑设计的。错 (05)黑盒测试的测试用例是根据应用程序的功能需求设计的。对 (06)为了快速完成集成测试,采用一次性集成方式是适宜的。错 (07)在软件开发过程中,若能推迟暴露其中的错误,则为修复和改进错误所花费的代价就会降低。错 (05)在软件开发过程中,若能尽早暴露其中的错误,则为修复和改进错误所花费的代价就会降低。对 (09)单元测试通常由开发人员进行。对 (10)压力测试通常需要辅助工具的支持。对 (11)压力测试不需要辅助工具的支持。错 (12)测试人员说:“没有可运行的程序,我无法进行测试工作”。错 (13)软件测试员可以对产品说明书进行白盒测试。错 (14)软件测试员无法对产品说明书进行白盒测试。对 (15)在设计测试用例时,应包括合理的输入条件和不合理的输入条件。对 二、选择 1、用黑盒技术设计测试用例的方法之一为( a ) A)因果图 B)逻辑覆盖 C)循环覆盖 D)基本路径测试 2、软件测试的目的是( b) A)避免软件开发中出现的错误 B)发现软件开发中出现的错误 C)尽可能发现并排除软件中潜藏的错误,提高软件的可靠性 D)修改软件中出现的错误 3、下列软件属性中,软件产品首要满足的应该是( a ) A)功能需求B)性能需求C)可扩展性和灵活性D)容错纠错能力 4、坚持在软件的各个阶段实施下列哪种质量保障措施,才能在开发过程中尽早发现和预防错误,把出现的错误克服在早期( a)。 A)技术评审 B)程序测试 C)改正程序错误D)管理评审 5、以程序的内部结构为基础的测试用例技术属于( d )。

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

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

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

软件测试期末复习

选择题 1、软件测试的目的是发现软件错误 2、按照测试组织,可将测试划分为开发测试、用户测试、第三方测试。下面关于开发测试措施描述正确的是1、开发方测试通常也叫“验证测试”或“Alpha测试”。2、用户测试又称为“Beta测试”。 3、开发方测试可以从软件产品编码结束后开始,或在模板(子系统)测试完成后开始,也可以再确认测试过程中产品达到一定的稳定和可靠程度之后再开始。 4、用户测试主要是把软件产品有计划地免费分发在目标市场,让用户大量使用,并评价,检查软件。 3、V模型描述了软件基本额的开发过程和测试行为,描述了不同的测试阶段与开发过程各阶段的对应关系,其中,集成测试阶段对应的开发阶段是概要设计阶段,系统测试阶段对应的开发阶段是软件概要设计阶段,功能测试阶段对应的开发阶段是详细设计阶段,单元测试阶段对应的开发阶段是编码阶段。 4、广义的软件测试由“确认”、“验证”、“测试”三个方面组成。其中“确认”是想证实在一个给定的外部环境中软件的逻辑正确性,检查软件在最终的运行环境上是否达到预期的目标。而验证是试图证明软件在软件生命周期各个阶段以及阶段间的逻辑性、完备性和正确性。 5、白盒测试也称结构测试或逻辑驱动测试,典型的白盒测试方法包括静态测试和动态测试。其中,静态测试除了静态结构分析法、静态质量度量法外,还有代码检查法。 6、软件质量保证的主要目标包括1、通过预防、检查与改进来保证软件质量。2、保证开发出来的软件和软件开发过程符合相应标准与规则。3、确保项目组制定的计划、标准和规程适合项目需要,同时满足评审和审计需要。 7、关于软件测试与质量保证,正确的是软件测试是软件质量保证的重要手段。软件测试是关注具体结果是否符合标准,软件质量保证是关注过程是否符合规定。 8、设计功能测试用例的根本依据是用户需求规格说明书。 9、软件测试原则中指出“完全测试是不可能的”,主要原因是输入量太大,输出结果太多以及路径组合太多。 10、以下关于设计功能测试用例的叙述,功能测试用例中不包括功能的依从性测试用例是不正确的。 11、以下关于不同类型的软件测试的叙述,正确的是确认测试是通过检验和、或检查所提供的客观证据,证实软件是否满足特定预期用途的需求。 12、对需求说明书评测的内容包括1、系统定义的目标是否与用户的需求一致。2、被开发项目的数据流与数据结构是否足够、确定。3、与所有其他系统交互的重要接口是否都已经描述。4、主要功能是否已包括在规定的软件范围之内,是否都已经充分说明。 13、有关评估系统效率质量特效,正确的是响应时间和交易执行吞吐量都是用来衡量系统执行快慢的。 14、关于软件系统安全防护策略的叙述中,1、网闸的主要目的是实现内网和外网的物理隔离。2、防火墙的主要目的是实现内网和外网的逻辑隔离。3、安全日志属于被动防护策略。 4、入侵检测系统通常部署在防火墙之内。 15、目前信息系统所使用的主要用户认证机制,身份识别标识包括指纹、智能卡、数字证书。

软件测试复习题

软件测试复习题 集团标准化工作小组 #Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#

软件测试课程期末复习题 一、判断分析题(判断正误并分析说明)。 1、测试是为了验证该软件已正确地实现了用户的要求。(×) 2、用黑盒法测试时,测试用例是根据程序内部逻辑设计的。(×) 3、好的测试员不懈追求完美,力求做到穷举测试。(√) 4、软件测试的目的是尽可能多的找出软件的缺陷。(√) 5、单元测试能发现约80%的软件缺陷。(√) 6、自底向上集成需要测试员编写驱动模块程序。( √ ) 7、代码评审员一般由测试员担任。(× ) 8、发现错误多的程序模块,残留在模块中的错误也多。(√) 9、单元测试多采用白盒测试(结构性测试)技术。(√) 10、系统测试多采用白盒测试(结构性测试)技术。(×)(黑盒测试) 11、进行自底向上集成测试,需要为所测模块或子系统编制相应的驱动模块。(√) 12、软件测试的目的是证明软件没有错误。(×) 13、测试组负责软件质量。( ×) 14、软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。 (√ ) 15、测试程序仅仅按预期方式运行就行了。( ×) 16、不存在质量很高但可靠性很差的产品。( ×) 17、总是首先设计白盒测试用例。(×) 18、用黑盒法测试时,测试用例是根据程序内部逻辑设计的。(×) 19、黑盒测试方法中最有效的是因果图法。( √) 20、软件测试按照测试过程分为黑盒、白盒测试。(×) 21、白盒测试又称结构测试、逻辑驱动测试或基于程序的测试。(√) 22、黑盒测试是从用户观点出发的测试。(√)

23、白盒测试根据程序外部特征进行测试,黑盒测试根据程序内部逻辑结构进行测试。(×) 24、程序通过了全面的白盒测试,就不需要再进行黑盒测试了。(×) 25、对于同一个测试对象,等价类的测试用例数多于边界值的测试用例数。() 26、如果输入条件规定了取值范围,则可定义一个有效等价类和两个无效等价类。(√) 27、有n个变量的函数的健壮最坏情况测试用例的个数为:5的n次方。(√) 28、有n个变量的函数的健壮性测试用例的个数为:5n+1。(×) 29、有n个变量的函数的最坏情况测试会产生5的n次方个测试用例。(√) 30、有n个变量的函数的边界值分析会产生4n+1个测试用例(√) 31、语句覆盖是最弱的逻辑覆盖。(√) 32、判定覆盖不一定包含条件覆盖。(√) 33、判定/条件覆盖能同时满足判定、条件两种覆盖标准。(√) 34、详细设计的目的是为软件结构图中的每一个模块确定使用的算法和块内数据结构,并用某种选定的表达工具给出清晰的描述。( √) 35、对于连锁型分支结构,若有n个判定语句,则有2n条路径。(√) 36、尽量采用复合的条件测试,以避免嵌套的分支结构。(√) 37、G OTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。(√) 38、单元测试属于动态测试。 (× ) 39、单元测试需要从程序的内部结构出发设计测试用例。(√) 40、单元测试需要为每个基本单元开发驱动模块或桩模块。(√) 41、在面向对象语言语言中,单元测试是函数或子过程。() 42、单元测试又称为模块测试,是针对软件测试的最小单位-程序模块进行正确性检验的测试工作。(√) 43、验收测试是由最终用户来实施的。(×) 44、负载测试是验证要检验的系统的能力最高能达到什么程度。(×) 45、我们可以人为的使得软件不存在配置问题。(×) 46、可以发布具有配置缺陷的软件产品。( √)

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

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-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)

软件测试方法和技术重点和试题与答案

太原理工大学软件测试技术 适用专业:软件工程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. 测试错误提示信息不属于文档测试范围。( ×)

软件测试期末试题B卷及答案最终版

………密………封………线………以………内………答………题………无………效…… 电子科技大学二零零八至二零零八学年第二学期 2008 说明:本试卷共四大题,试卷满分100分。 注意: .................. ...请将所有答案填写在最后一页答题卡上。 一、单项选择题:共20小题,每小题2 分,满分40分。 1.软件测试的目的:( c ) A. 避免软件开发中出现的错误 B. 发现软件开发中出现的错误 C. 尽可能发现并排除软件中潜藏的错误,提高软件的可靠性 D. 修改软件中出现的错误 2、软件测试是采用( a )执行软件的活动。 A.测试用例 B.输入数据 C.测试环境 D.输入条件 3、导致软件缺陷的最大原因是:( a ) A.软件需求说明书 B.设计方案 C.编码 D.维护 4、在下列描述中,关于一个软件缺陷状态完整变化的错误描述是( d ) A、打开——修复——关闭 B、打开——关闭 C、打开——保留 D、激活——修复——重新打开 5、在下列描述中,关于测试与调试的说法错误的是( d ) A、测试是显示错误的行为;而调试是推理的过程; B、测试显示开发人员的错误。调试是开发人员为自己辩护; C、测试能预期和可控。调试需要想象、经验和思考; D、测试必须在详细设计已经完成的情况下才能开始;没有详细设计的信息调试不可能进行。 6、某次程序调试没有出现预计的结果,下列( b )不可能是导致出错的原因。 A.变量没有初始化 B.编写的语句书写格式不规范 C.循环控制出错 D.代码输入有误 7、软件缺陷修复的代价最高的阶段为( a ) A、发布阶段 B、需求阶段 C、设计阶段 D、编码阶段 8、不属于逻辑覆盖方法的是( d )。

软件测试复习题(2014-2015-2)

软件测试课程期末复习题 ???????????????????????????????? 一、判断分析题(判断正误并分析说明)。 1、测试是为了验证该软件已正确地实现了用户的要求。(×) 2、用黑盒法测试时,测试用例是根据程序内部逻辑设计的。(×) 3、好的测试员不懈追求完美,力求做到穷举测试。(√) 4、软件测试的目的是尽可能多的找出软件的缺陷。(√) 5、单元测试能发现约80%的软件缺陷。(√) 6、自底向上集成需要测试员编写驱动模块程序。( √ ) 7、代码评审员一般由测试员担任。(× ) 8、发现错误多的程序模块,残留在模块中的错误也多。(√) 9、单元测试多采用白盒测试(结构性测试)技术。(√) 10、系统测试多采用白盒测试(结构性测试)技术。(×)(黑盒测试) 11、进行自底向上集成测试,需要为所测模块或子系统编制相应的驱动模块。(√) 12、软件测试的目的是证明软件没有错误。(×) 13、测试组负责软件质量。( ×) 14、软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。 (√ ) 15、测试程序仅仅按预期方式运行就行了。( ×) 16、不存在质量很高但可靠性很差的产品。( ×) 17、总是首先设计白盒测试用例。(×) 18、用黑盒法测试时,测试用例是根据程序内部逻辑设计的。(×) 19、黑盒测试方法中最有效的是因果图法。( √) 20、软件测试按照测试过程分为黑盒、白盒测试。(×) 21、白盒测试又称结构测试、逻辑驱动测试或基于程序的测试。(√) 22、黑盒测试是从用户观点出发的测试。(√)

23、白盒测试根据程序外部特征进行测试,黑盒测试根据程序内部逻辑结构进行测试。(×) 24、程序通过了全面的白盒测试,就不需要再进行黑盒测试了。(×) 25、对于同一个测试对象,等价类的测试用例数多于边界值的测试用例数。() 26、如果输入条件规定了取值范围,则可定义一个有效等价类和两个无效等价类。(√) 27、有n个变量的函数的健壮最坏情况测试用例的个数为:5的n次方。(√) 28、有n个变量的函数的健壮性测试用例的个数为:5n+1。(×) 29、有n个变量的函数的最坏情况测试会产生5的n次方个测试用例。(√) 30、有n个变量的函数的边界值分析会产生4n+1个测试用例(√) 31、语句覆盖是最弱的逻辑覆盖。(√) 32、判定覆盖不一定包含条件覆盖。(√) 33、判定/条件覆盖能同时满足判定、条件两种覆盖标准。(√) 34、详细设计的目的是为软件结构图中的每一个模块确定使用的算法和块内数据结构,并用某种选定的表达工具给出清晰的描述。( √) 35、对于连锁型分支结构,若有n个判定语句,则有2n条路径。(√) 36、尽量采用复合的条件测试,以避免嵌套的分支结构。(√) 37、G OTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。(√) 38、单元测试属于动态测试。 (× ) 39、单元测试需要从程序的内部结构出发设计测试用例。(√) 40、单元测试需要为每个基本单元开发驱动模块或桩模块。(√) 41、在面向对象语言语言中,单元测试是函数或子过程。()

(答案整理)11《软件测试》复习

《软件测试》复习提纲 1.什么是软件测试?软件测试的意义? 软件测试是为了尽快尽早地发现在软件产品中所存在的各种软件缺陷而展开的贯穿整个软件开发生命周期、对软件产品(包括阶段性产品)进行验证和确认的活动过程。 答案1:软件测试是为了发现错误而执行程序的过程。 答案2:软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计的一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例运行程序,以及发现错误的过程。 意义:确保软件的功能符合用户的需求,把尽可能多的问题在发布或交付前发现并改正。 2.什么是软件缺陷?请举例。哪里出现的缺陷最多? 软件缺陷就是软件产品中所存在的问题,最终表现为用户所需要的功能没有完全实现,未满足用户的需求。 举例:缺点(defect)异常(anomaly)偏差(variance)失败(failure)缺陷(bug)故障(fault)问题(problt)错误(error) 规格说明书出现的缺陷最多。 3.软件测试是否就是程序测试?哪些可以作为软件测试的对象? 不是。对象:程序、数据(库)、文档、服务 4.软件测试的目的是什么?软件测试的目标是什么?软件测试的原则是什么? 测试的目的就是发现软件中的各种错误和缺陷,但不是唯一目的,软件测试存在多种目的,其中最重要的三条为:(1)证明所做的是客户所需的(2)确保编码人员正确理解设计的意图(3)通过回归测试来保证目前运行的程序在将来仍然可以正常工作。 目标:确保软件完成了它所承诺或公布的功能;为软件的质量评估提供依据;确保软件满足性能的要求;确保软件是健壮的和适应用户环境,为软件质量改进和管理提供帮助原则:1.所有测试的标准都是建立在用户需求之上2.软件测试必须基于“质量第一”的思想去开展各项工作3.事先定义好产品的质量标准4.软件项目一启动,软件测试也就开始,而不是等程序写完才开始进行测试5.穷举测试时不可能的6.第三方进行测试会更客观更有效7.软件测试计划是做好软件测试工作的前提8.测试用例是设计出来的,不是写出来的9.对主观错误较多的程序段,应进行更深入的测试10.重视文档,妥善保管一切测试过程文档。 5.软件测试如何分类? 按照程序是否执行:静态测试(审查、评审和走查)、动态测试 按照测试用例的设计方法:白盒测试、黑盒测试 按照开发阶段划分:单元测试、集成测试、系统测试、验收测试 按照测试实施的组织划分:开发方测试、用户测试(β测试)、第三方测试 按照是否使用工具:手工测试、自动化测试

软件测试期末考试试卷A

试卷编号: 期末考试试题(A 卷) 课程: 软件测试 考试班级: 注意事项: 1. 本试题全部为笔答题,共4页,满分100分,考试时间90分钟。 2. 答卷前将答题纸上密封线内的项目填写清楚,密封线内禁止答题。 3. 用钢笔或圆珠笔在答题纸上写清题号,将答案直接答在相应题号后。 4. 本试题为开卷考试。 一、单选题(每题2分,共20分) 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)测试方案 二、多选题(每题2分,共20分) 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、对于一个含有n个变量的程序,采用健壮性边界值分析法测试程序会产生()个测

软件测试期末复习

一、单项选择题:共20小题,每小题2 分,满分40分。 1.软件测试按照测试层次可以分为( C ) A.黑盒测试、白盒测试功能性测试和结构性测试 件测试是有风险的行为,并非所有的软件缺陷都能够被修复。(T) 2.软件质量保证和软件测试是同一层次的概念。(F) 3.我们有理由相信只要能够设计出尽可能好的测试方案,经过严格测试之后的软 件可以没有缺陷。(F) 4.程序员兼任测试员可以提高工作效率。(F) 5.在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。(T ) 6.传统测试是在开发的后期才介入,现在测试活动已经扩展到了整个生命周期。 ( T ) 7.传统测试以发现错误为目的,现在测试已经扩展到了错误预防的范畴。T 8.软件测试的生命周期包括测试计划、测试设计、测试执行、缺陷跟踪、测试评 估。(T ) 9.调试从一个已知的条件开始,使用预先定义的过程,有预知的结果;测试从一 个未知的条件开始,结束的过程不可预计。( F) 10.白盒测试往往会造成测试用例之间可能存在严重的冗余和未测试的功能漏洞。 ( F) 11.在所有的黑盒测试方法中,基于决策表的测试是最为严格、最具有逻辑性的测 试方法。(∨)

12.永远有缺陷类型会在测试的一个层次上被发现,并且能够在另一个层次上逃避 检测。(∨) 13.测试用例的数目越多,测试的效果越好。( x ) 14.只要能够达到100%的逻辑覆盖率,就可以保证程序的正确性。( x ) 15.单元测试属于动态测试。(∨) 16.验收测试是以最终用户为主的测试。(∨) 17.没有发现错误的测试是没有价值的。(∨) 18.可以把不合格的开发人员安排做测试。( x ) 19.每一个软件项目都有一个最优的测试量。(∨) 20.黑盒测试往往会造成测试用例之间可能存在严重的冗余和未测试的功能漏洞。 (∨) 三、简答题:共4小题,每题5分,满分20分。 1、简单描述一下软件测试工程师一般会承担的一些具体工作。 1:检视代码,评审开发文档(静态测试方法) 2:进行测试设计,写作测试文档(测试计划,测试方案,测试用例等) 3:执行测试,发现软件缺陷,提交缺陷报告,并确认缺陷最终得到了修正。 4:通过测试度量软件的质量。 2、黑盒测试与白盒测试各有哪些优缺点 黑盒测试与软件如何实现无关,测试用例开发可以实现并行进行,因此可以压缩总的项目开发时间,缺点:测试用例可以之间可能存在严重的冗余。还会有未测试的软件漏洞。白盒测试局限于已经完成的代码行为当中,离代码太近,如果黑

最新软件测试期末复习资料

一、等价类划分 例题: 等价类测试用例的设计: ●弱一般等价类 ●强一般等价类 ●弱健壮等价类 ●强健壮等价类 函数f(x,y)有两个输入变量,x的取值范围是[10,30],y的取值范围[40,70] 根据需求: x的有效等价类为[10,20],[21,30],无效等价类<10,>30 y的有效等价类为[40,50],[51,60],[61,70]无效等价类<40,>70 1、弱一般等价类测试用例(x和y的有效等价类的值至少取一次即可) 测试用例编号X y 预期输出 15 45 25 55 15 65 2、强一般等价类测试用例(x和y的有效等价类的值做笛卡尔乘积) 测试用例编号X y 预期输出 15 45 15 55 15 65 25 45 25 55 25 65 3、弱健壮等价类(强一般等价类+其中一个变量取无效值,其他变量取有效值的情况)测试用例编号X y 预期输出 15 45 15 55 15 65 25 45 25 55 25 65 5 45 5 55 5 65 35 45 35 55 35 65 15 35 25 35 15 75 25 75

4、强健壮等价类(在弱健壮等价类的基础上+都取无效值的情况,只是针对两个变量)测试用例编号X y 预期输出 15 45 15 55 15 65 25 45 25 55 25 65 5 45 5 55 5 65 35 45 35 55 35 65 15 35 25 35 15 75 25 75 5 35 5 35 5 75 5 75 35 35 35 35 35 75 35 75 注册界面的需求如下: ●用户名和密码6-20的字母数字组合 ●邮箱满足xxx@xxx.xx格式 ●年龄必须是数字 写出有效等价类和无效等价类,再写出弱健壮等价类测试用例 有效等价类无效等价类 用户名1、6-20的字母数字组合5、全字母 6、全数字 7、<6位的字母数字组合 8、>20位的字母数字组合密码2、6-20的字母数字组合9、全字母 10、全数字 11、<6位的字母数字组合 8、>20位的字母数字组合

相关主题
文本预览
相关文档 最新文档