软件测试期末复习资料

合集下载

软件测试期末复习题

软件测试期末复习题

软件测试期末复习题软件测试是确保软件产品满足规定需求并具有可接受质量的过程。

期末复习时,理解软件测试的基本概念、测试方法、测试类型和测试过程是至关重要的。

以下是一些可能的期末复习题,供同学们参考:1. 软件测试的目的是什么?- 软件测试的目的是验证软件产品的功能和非功能需求是否符合用户和业务的期望,同时识别软件中的缺陷,以提高软件的可靠性和可用性。

2. 列举软件测试的几种类型。

- 单元测试、集成测试、系统测试、验收测试、性能测试、安全测试、回归测试等。

3. 解释什么是黑盒测试和白盒测试。

- 黑盒测试是一种测试方法,测试者不需要了解程序内部的逻辑或代码,只根据需求说明书来测试软件的功能。

- 白盒测试则需要测试者了解程序的内部结构和代码,测试程序的内部逻辑是否正确。

4. 描述软件测试的生命周期。

- 软件测试生命周期通常包括需求分析、测试计划、测试设计、测试执行、缺陷管理、测试报告和测试结束。

5. 解释什么是缺陷生命周期。

- 缺陷生命周期是指从缺陷被发现到被修复并验证的整个过程,包括缺陷的报告、确认、分配、修复、验证和关闭。

6. 列举至少三种常见的软件缺陷类型。

- 功能缺陷、性能缺陷、用户界面(UI)缺陷、安全缺陷等。

7. 描述软件测试计划应包含哪些内容。

- 测试目的、测试范围、测试方法、资源分配、时间安排、风险评估、测试入口和出口准则等。

8. 解释什么是回归测试,为什么它在软件开发中很重要?- 回归测试是为了确保软件在修改后仍然满足原有需求而进行的测试。

它很重要,因为修改可能会引入新的错误,影响到软件的其他部分。

9. 列举至少两种软件测试工具,并简要说明它们的用途。

- 例如,JIRA用于缺陷跟踪和管理,Selenium用于自动化Web应用的测试。

10. 解释什么是敏捷测试,它与传统测试有何不同?- 敏捷测试是一种适应性强、快速响应变化的测试方法,它与传统测试的主要区别在于更强调测试与开发团队的紧密协作,以及测试活动在整个开发周期中的持续进行。

软件测试期末复习宝典

软件测试期末复习宝典

软件测试主要内容:1.软件工程与软件测试 2.软件质量与度量质量特性(背)V 模型:是最具有代表意义的测试模型 ,反映出了测试活动与分析设计活动的关系。

V 模型指出,单元和集成测试应检测程序的执行是否满足软件设计的要求;系统测试应检测系统功能、性能的质量特性是否达到系统要求的指标;验收测试确定软件的实现是否满足用户需要或合同的要求。

软件质量 质量特性 质量子特性 度量 功能性 适合性 准确性 互操作性 依从性 安全性 可靠性 成熟性 容错性 易恢复性 可使用性 易理解性 易学习性 易操作性 效率 时间特性 资源特性 可维护性 易分析性 稳定性 易变更性 易测试性 可移植性 适应性 易安装性 遵循性 易替换性度 量由 使 用 单 位 自 行 决 定W模型:由两个V字型模型组成,分别代表测试与开发过程。

W模型强调:测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、设计等同样要测试,也就是说,测试与开发是同步进行的。

H模型:将测试活动完全独立出来,形成了一个完全独立的流程,将测试准备活动和测试执行活动清晰地体现出来。

H模型揭示了软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行。

软件测试过程分类:1.按测试方式分类:静态测试、动态测试2.按测试方法分类:白盒测试、黑盒测试3.按测试过程分类:单元测试、集成测试、系统测试、验收测试第二章(白盒)程序的环路复杂性(会做题)(黑盒)黑盒测试技术:边界值分析法、等价类分析法、因果图分析法、决策表分析法1.边界值分析法例题:有二元函数f(x,y),其中x∈[1,12],y∈[1,31]。

则采用边界值分析法设计的测试用例是:{ <1,15>, <2,15>, <11,15>, <12,15>, <6,15>, <6,1>, <6,2>, <6,30>, <6,31> }推论:对于一个含有n个变量的程序,采用边界值分析法测试程序会产生4n+1个测试用例。

软件测试期末复习知识点总结大全

软件测试期末复习知识点总结大全

软件测试期末复习知识点总结大全第一篇:软件测试期末复习知识点总结大全1.软件测试:是由“验证(verrificatione)”和“有效性确认(validation)”活动构成的整体:“验证”是检验软件是否已正确地实现了产品规格书所定义的系统功能和特性。

验证过程提供证据表明软件相关产品与所有生命周期活动的要求(如正确性、完整性、一致性、准确性等)相一致。

相当于以软件产品设计规格说明书为标准进行软件测试的活动。

“有效性确认”是确认所开发的软件是否满足用户真正需求的活动。

一切从客户出发,理解客户的需求,对软件需求定义、设计的怀疑,发现需求定义和产品设计中的问题。

这主要通过各种软件评审活动来实现,包括让客户参加评审、测试活动。

软件测试过程:(1)测试组织和管理(2)测试计划(3)测试用例实际(4)测试实施(5)测试结果分析(6)测试评审与报告软件测试方法:白盒测试方法、黑盒测试方法、静态测试与动态测试、主动测试与被动测试、形式化测试方法、基于风险的测试、模糊测试方法、ALAC测试和随机测试方法2.单元测试:是对软件基本组成单元进行的测试,而且软件单元是在与程序的其他部分相隔离的情况下进行独立的测试。

静态测试就是静态分析,对模块的源代码进行研读,查找错误或收集一些度量数据,并不需要对代码进行编译和仿真运行。

动态测试是通过真正运行程序发现错误,通过观察代码运行过程,来获取系统行为、变量实时结果、内存、堆栈、线程以及测试覆盖度等各方面的信息,来判断系统是否存在问题,或者通过有效的测试用例,对于的输入输出关系来分析被测程序的运行情况,来发现缺陷。

静态测试、动态测试的区别:1.静态测试用于预防,动态测试用于矫正;2.多次的静态测试比动态测试的效率高;3,静态测试综合测试程序代码;4.在相当短的时间里,测试的覆盖率能达到100%,而动态测试经常只能达到50%测试左右;5.动态测试比静态测试更花时间;6.静态测试比动态测试更能发现bug;7.静态测试的执行可以在程序编码编译前,动态是中能在编译后才能执行。

软件测试期末复习资料

软件测试期末复习资料

软件测试总结1.软件测试有哪些原则1)所有的测试都应该追溯到用户需求2)应当把“尽早和不断地测试”作为开发者的座右铭3)程序员应避免检测自己的程序,测试工作应该由独立的专业的软件测试机构来完成4)Pareto原则5)设计测试用例时,应该考虑各种情况6)对测试错误的结果一定要有一个确认的过程7)制定严格的测试计划8)完成测试是不可能的,测试需要终止9)注意回归测试的关联性10)妥善保存一切测试过程文档2.测试用例设计有哪些原则1)用成熟的测试用例设计方法来指导设计2)测试用例的正确性3)测试用例的代表性4)测试结果的可判断性5)测试结果的可再现性6)足够详细,准确和清晰的步骤3.单元测试要解决哪五个方面测试问题1)模块接口测试2)模块局部数据结构测试3)模块中所有独立执行路径测试4)各种错误处理测试5)模块边界条件测试4.软件测试文档有哪些,有什么作用1)软件测试文档2)测试计划:主要对测试项目、所需要进行的测试工作、测试人员所负责测试工作、过程,以及所需时间、资源和风险做出预先计划和安排3)测试计划规格说明:用于每个测试等级,以指定测试集的体系结构和覆盖跟踪4)测试用例说明:描述测试用例5)测试规程规格说明:用于指定一个测试用例集的步骤6)测试日志:记录测试的执行情况7)软件缺陷报告:描述出现测试过程或软件中的异常情况8)测试总结报告:用于报告某个测试项目的完成情况5.等价类划分有哪两种,分别是什么,简述两者的概念1)有效等价类i.对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。

利用它,可以检查程序是否实现了规格说明预先规定的功能和性能2)无效等价类i.对于程序规格说明来说,是否合理、无意义的输入数据构成集合利用它,可以检查程序中功能和性能的实现是否有不符合规格说明要求的地方6.软件验收测试应完成哪些主要测试工作1)配置复审2)合法性检查3)软件文档检查4)软件代码测试5)软件功能和性能测试6)测试结果交付内容7.什么是测试用例?为什么要设计测试用例?1)测试用例是一种情况,软件程序在这种情况下正常运行并达到程序所设计的结果2)作用i.挑选代表性的测试数据,可有效的节省时间、资源提高测试效率ii.避免测试的盲目性iii.提高软件的可维护性iv.良好的测试用例具有重复使用的性能,使得测试过程事半功倍,提高测试效率8.简述增量或集成测试的自顶向下和自底向上两种测试方法的优缺点。

《软件测试》期末复习试题及答案

《软件测试》期末复习试题及答案

《软件测试》期末复习试题及答案阶段测试一一. 单选题(共16题,65.6分)1. (单选题)(D )不是正确的软件测试目的。

A. 尽最大的可能找出最多的错误B. 设计一个好的测试用例对用户需求的覆盖度达到100%C. 对软件质量进行度量和评估,以提高软件的质量D. 发现开发所采用的软件过程的缺陷,进行软件过程改进2. (单选题)下面说法正确的是(C)。

A. 经过测试没有发现错误,说明程序正确B. 测试的目标是证明程序没有错误C. 成功的测试是发现了迄今尚未发现的错误的测试D. 成功的测试是没有发现错误的测试3. (单选题)下列选项中,不属于软件测试工程师职责范围的是(C)。

A. 测试方案设计B. 测试用例设计C. 进行代码调优D. 测试实施4. (单选题)下面属于软件测试模型的是(A)A. W模型B. 瀑布模型C. L模型D. G模型5. (单选题)下面关于软件测试模型的描述中,不正确的是(A)。

①V模型的软件测试策略既包括低层测试,又包括高层测试,高层测试是为了确保源码的正确性,低层测试是为了使整个系统满足用户的需求②V模型存在一定的局限性,它仅仅将测试过程作为在需求分析、概要设计、详细设计及编码之后的一个阶段③W模型可以说是V模型自然而然的发展,它强调:测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试④H模型中,软件测试是一个独立的流程,贯穿产品的整个生命周期,与其他流程并发地进行⑤H模型中,测试准备和测试实施紧密结合,有利于资源调配A. ①⑤B. ②④C. ③④6. (单选题)下列关于W模型的描述中正确的是(A)A. W模型强调测试伴随着整个软件开发周期,测试对象不仅仅是程序,需求、功能和文档同样需要测试B. 所有开发活动完成后,才可执行测试C. W模型将软件的开发视为合同签订、需求、设计、编码等一系列串行活动D. 在W模型中,需求、设计、编码串行进行,也可以并行工作7. (单选题)V模型描述了软件基本的开发过程和测试行为,描述了不同测试阶段与开发过程各段的对应关系。

软件测试期末复习

软件测试期末复习

软件测试期末复习第一篇:软件测试期末复习一、单项选择题:共20小题,每小题2 分,满分40分。

1.软件测试按照测试层次可以分为(C)A.黑盒测试、白盒测试//测试方式B.功能性测试和结构性测试//测试目的C.单元测试、集成测试和系统测试D、动态测试和静态测试//测试方式2、软件测试是采用(测试用例)执行软件的活动。

A.测试用例 B.输入数据 C.测试环境 D.输入条件3.软件测试是软件开发过程的重要阶段,是软件质量保证的重要手段,下列哪个(些)是软件测试的任务?答案:(D)1预防软件发生错误2发现程序错误3提供诊断错误信息A.只有1 B.只有2 C.只有3 D.都是4、导致软件缺陷的最大原因是:(A)A.软件需求说明书B.设计方案 C.编码D.维护5、测试用例是为达到最佳的测试效果或高效的揭露隐藏的错误而精心设计的少量测试数据,至少应该包括(A)A、测试输入、执行条件和预期的结果。

B、测试目标、测试工具C、测试环境D、测试配置6、对已经发现的错误进行错误定位和确定出错性质,并改正这些错误,同时修改相关的文档,这种行为属于(B)A.测试B.调试 C.回归测试D.单元测试软件测试是软件测试人员和程序员都参与的一项工作,是贯穿整个生命周期的,只需要发现软件的错误,而软件调试主要是程序员自己参与,对程序(设计、编码)进行修改、排除错误,主要是在开发阶段。

7、软件缺陷修复的代价最高的阶段为(A)A、发布阶段B、需求阶段C、设计阶段D、编码阶段8、下列(B)是关于软件缺陷的描述。

A.导致软件包含故障的人的行为//软件错误 B.产品的异常情况C.引起一个功能部件不能完成所要求的功能的一种意外情况D.功能部件执行其规定功能的能软件错误是指在软件生存期内的不希望出现或不可接收的人为错误,软件错误导致软件缺陷的产生。

软件缺陷是存在于软件(文档,数据,程序)之中不希望出现或不可接收的偏差;软件缺陷导致软件在运行某一特定条件时出现软件故障;这时软件缺陷被激活。

《软件测试》期末复习资料

《软件测试》期末复习资料

《软件测试》期末复习资料一.软件缺陷的定义计算机系统或者程序中存在的任何一种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷、瑕疵。

缺陷的存在会导致软件产品在某种程度上不能满足用户的需要。

二.软件缺陷的表现(准确定义)1软件未达到需求规格说明书中指明的功能2软件出现了需求规格说明书中指明不会出现的错误3软件功能超出需求规格说明书中指明的范围4软件测试员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好三.软件缺陷产生的原因1技术问题:算法错误,语法错误,计算和精度问题,接口参数不匹配2团队工作:误解、沟通不充分3软件本身:文档错误;边界考虑不周;时间上不协调、不一致所带来的问题;没有考虑系统崩溃后在系统安全性、可靠性方面的隐患四.软件测试的对象软件=程序+数据+文档+服务五.软件测试定义使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别六. 软件测试的目的尽可能早地发现软件中的缺陷,并确保其得以修复;“为了证明软件有错误,而不是证明软件没有错误”;提高软件质量和可靠性。

七. 软件测试的原则1.可追溯性2.尽早预防、回归测试3.二八原则4.由小到大原则5.投入/产出原则6.独立的第三方测试八. 软件质量定义软件质量就是软件与明确的和隐含的定义的需求相一致的程度。

九. 测试用例测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径是否正确或核实某个功能是否满足特定需求。

十. 测试用例设计的基本原则1.测试用例的代表性2.测试结果的可判定性3.测试结果的可再现性十一.软件测试的分类1按照测试阶段划分:单元测试、集成测试、确认测试、验收测试、系统测试2按照执行状态划分:静态测试、动态测试3按照测试技术划分:白盒测试、黑盒测试4按照执行主体划分:手工测试、自动测试十一. 单元测试定义单元测试又称模块测试是指对软件中的最小可测试单元进行测试,目的是检查每个单元是否能够正确实现详细设计说明中的功能、性能、接口和设计约束等要求,发现各个模块内部可能存在的各种缺陷。

软件测试与质量保证期末复习资料整理

软件测试与质量保证期末复习资料整理

复习提纲第一部分软件测试概述1、软件测试得背景1、1软件危机与软件质量软件质量保证SQA,软件测试ST;1、2 软件缺陷 (分类,来源,累积与放大效应)●常见得软件缺陷:1.软件没有达到规格说明书表明得功能2.软件出现了规格说明书指明不会出现得问题3.软件没有达到规格说明书虽未指明,但应该达到得功能4.软件功能超出规格说明书指明得范围5.软件测试人员或者用户认为软件难以理解、不易使用、运行速度慢。

●原因:1.软件得需求规格说明书;2.软件得设计;3.代码得错误●累积与放大效应:前期得软件缺陷会在后期逐步扩大1、3 软件测试得意义为了发现软件缺陷,软件测试必不可少;开销占总成本得30%~50%;2、软件测试得含义2、1什么就是软件测试就是为了发现错误而执行程序得过程。

2、2软件测试得目得发现问题;对质量或可接受性做出判断;2、3 软件测试得对象1.需求分析2.概要设计3.详细设计4.编码2、4测试≠调试测试→发现错误→调试;这就是一个交叉循环得过程;测试就是一种检验,有一套完整得理论,不需要了解设计细节,有非程序设计者完成,且测试得设计与执行能够自动化;2、5 软件测试得特征●风险性——彻底测试程序就是不可能得;●不修复原则——并非所有软件缺陷都需要修复;●群集现象——错误得集中;●寄生虫性——找到缺陷越多,残存得缺陷越多3、软件测试得过程3、1软件测试得生命周期需求规格说明→设计→编码→测试→缺陷分类→缺陷隔离→缺陷解决3、2软件测试得步骤1、制定测试计划2、设计测试用例与测试过程3、运行测试用例(核心)4、评估测试结果3、3 测试用例=输入+预期输出3、4 通过维恩图理解测试用例—-相交得地方尽可能大3、5测试用例得设计–3、5、1 功能性测试(黑盒测试)●依据于软件得规格说明;●与软件得具体实现无关;●优:并行进行,测试用例与实现得改变无关;●缺:用例冗余度大;会有漏洞,不能发现多余缺陷;–3、5、2结构性测试(白盒测试)●依据于程序实现;●利用程序内部得逻辑结构;●优:具有覆盖率指标;●缺:不能发现遗漏缺陷;4.错误与缺陷分类●以出现相应错误得开发阶段来划分;●以相应失效产生得后果来划分;●以解决难度来划分;●以不解决会产生得风险来划分5.软件测试得级别1.单元测试——详细设计信息,白盒测试为主;2.集成测试-—概要设计信息,模块得组合测试;3.系统测试——软件需求;4.确认测试-—依照需求规格说明书;5.验收测试——用户参与,黑盒测试;6.软件测试得分类●静态测试-—不运行被测试程序;●动态测试—-运行被测试得程序;●自动测试——利用自动化测试工具;●人工测试——人工走查与代码审查;第二部分黑盒测试ﻫ1、边界值测试 (书:第5章)•边界值分析(依据,含义,方法)●含义:针对各种边界情况设计测试用例;●依据:大量得错误就是发生在输入或输出范围得边界上;●方法:以基于但却像与输入空间得边界值分析,设有n个输入变量,则对应有4n+1个测试用例.●局限性:只适用于变量之间没有依赖得情况;不适用于布尔变量;•健壮性测试●含义:例外情况时得系统表现;n个变量对应6n+1个测试用例;•最坏情况测试●用例为边界值集合得笛卡儿积(5n个测试用例)•健壮最坏情况测试——7n个测试用例•特殊值测试--主观性与有效性•随机测试-—使用随机数生成器,直到每种输出至少出现一次;2、等价类测试 (书:第6章)•等价类测试得思想⏹依据:集合得划分,无冗余(不代表测试用例不冗余),完备性;⏹基本思想:①划分等价类;②从中选取测试用例,以覆盖所有得等价类;⏹关键:如何划分等价类;⏹特点:典型得黑盒测试方法•有效/无效等价类●有效等价类:合理得输入数据,就是否实现了预期得功能;●无效等价类:无意义得输入数据,检验程序对于无效数据得处理;•强/弱,健壮/一般等价类测试●弱一般等价类:单缺陷假设,不考虑无效值,不完备●强一般等价类:多缺陷假设,不考虑无效值,不完备●弱健壮等价类:单缺陷假设,考虑无效值,不完备;●强健壮等价类:多缺陷假设,考虑无效值,完备;•基于输入/输出得等价类测试•等价类测试得经验•根据输入条件,划分等价类得原则●如果确知以划分得等价类中得各元素在程序中得处理方式不同,则应进一步划分成更小得等价类。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
④每当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。
⑤如果某一规则得到满足要执行多个操作,这些操作的执行顺序无关紧要。
4、例:
1、某公司为本科以上学历的人重新分配工作,分配原则如下:
(1)如果年龄不满18岁,学历是本科,男性要求报考研究生,女性则担任行政工作。
(2)如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务,学历是硕士,不分男女,任课题组组长。
软件测试从开发生命周期的阶段来划分,可
分为:
需求评审
设计评审
单元测试
集成测试
功能测试
系统测试
验收测试
5、软件测试和开发的关系
下面是W模型,还有V模型。
6、软件开发模型包括:瀑布模型、螺旋模型、增量模型
7、测试过程中,测试计划描述用于描述测试的整体方案,测试缺陷报告描述依据测试案例找出的问题。
8、什么是驱动模块,什么是桩模块
(5)编写条件/判断覆盖测试用例
组合情况:(自己填写)
1
2
3
4
5
6
7
8
X>3,Z<10
X>3,Z>=10
X<=3,Z<10
X<=3,Z>10
X==4,Y>5
X==4,Y<=5
X!=4,Y>5
X!=4,Y<=5
测试用例格式参考
测试用例
X变量1
Y变量2
Z变量3
所走路径
覆盖组合
4
6
9
1,5
4
4
11
2,6
2
2、边界值测试用例
例,已知函数f(x,y),x的取值为[10,20],y的取值为[50,80]。
第一步,找出x和y的边界值:
X的边界值:10,11,15,19,20
Y的边界值:50,51,65,79,80
第二步,写边界值测试用例。
测试用例编号
X
Y
预期输出
15
50
15
51
15
65
15
79
15
80
10
65
原因:
1.售货机有零钱找
2.投入1元硬币
3.投入5角硬币
4.押下橙汁按钮
5.押下啤酒按钮
结果:
21.售货机〖零钱找完〗灯亮
22.退还1元硬币
23.退还5角硬币
24.送出橙汁饮料
25.送出啤酒饮料
5、复习因果图实验
四、决策表
1、概念
在一些数据处理问题中,某些操作是否实施依赖于多个逻辑条件的取值。
在这些逻辑条件取值的组合所构成的多种情况下,分别执行不同的操作。
发现软件系统的缺陷、错误及不足
获取软件产品的质量信息
预防下一版可能出现的问题
预防用户使用软件时可能出现的问题
提前发现开发过程中的问题和风险
提供可以用以分析的测试结果数据
3、缺陷定义
软件缺陷就是软件产品中所存在的问题,最终表现为用户所需要的功能没有完全实现,不能满足或不能全部满足用户的需求。
4、软件测试分类
4
11
(4)编写条件覆盖测试用例
条件说明:(自己填写)
X>3取真值
X>3取假值
Z<10取真值
Z<10取假值
X==4取真值
X==4取假值
Y>5取真值
Y>5取假值
T1
~T1
T2
~T2
T3
~T3
T4
~T4
测试用例格式参考
测试用例
x变量1
y变量2
z变量3
所走路径
覆盖条件
4
6
9
T1,t2,T3,T4
2
4
11
~T1,~T2,~T3,~T4
一、等价类划分
例题:
等价类测试用例的设计:
弱一般等价类
强一般等价类
弱健壮等价类
强健壮等价类
函数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
测试用例编号
用户名
密码
邮箱
年龄
预期输出
abc123456
cde111200
139@
20
dtgfyu
cde111200
139@
20
abc123456
124689545
139@
20
abc123456
cde111200
Wrf.512
20
abc123456
cde111200
语句覆盖
判断覆盖
条件覆盖
判断/条件覆盖
路径覆盖
例:设计一个函数,函数功能描述如下:
设计DoWork函数,函数有三个整形参数,x,y,z,
当输入参数x>3且z<10时计算k=x*y-1,j=Sqrt(k)语句块1
当输入参数x==4或y>5时计算j=x*y+10语句块2
最后输出j%3的值.语句块3
程序流程图
③由于语法或环境的限制,有些原因和结果的组合情况是不可能出现的。为表明这些特定的情况,在因果图上使用若干个特殊的符号标明约束条件。
④把因果图转换成判定表。
⑤把判定表中每一列表示的情况写成测试用例。
3、例1:
软件规格说明书
“第一列字符必须是#或*,第二列字符必须是一个数字,在此情况下进行文件的修改。但如果第一列字符不正确,则给出信息N,如果第二列字符不是数字,则给出信息M。”
11
65
15
65
19
65
20
65
3、健壮测试用例
取值,除了上面5个值以外,一个略超过最大值的取值(max+),以及一个略小于最小值(min-)的取值。
例,已知函数f(x,y),x的取值为[10,20],y的取值为[50,80]。
第一步,找出x和y的边界值:
X的边界值:9,10,11,15,19,20,21
重点:按照软件内部的结构测试程序,软件中的每条通路是否都能按预定要求正确工作
穷举路径测试:早期发现软件缺陷最有效的方法
2、白盒测试VS黑盒测试
黑盒测试:
不涉及程序结构
用软件规格说明生成测试用例
某些代码段得不到测试
可适用于从单元测试到系统联试
需要用白盒测试加以补充
白盒测试:
考查程序逻辑结构
用程序结构信息生成测试用例
139@
jjk
二、边界值分析
1、边界值的取值:(正确的数据)
最小值(min)
稍高于最小值(min+)
正常值(nom)
稍低于最大值(max-)
最大值(max)
例1:程序的规格说明:“重量在10~50公斤范围内的邮件,其计算邮费……”,测试用例选择:取10公斤,10.01公斤,25公斤,49.99公斤,50公斤
12、黑盒测试优点
黑盒测试不考虑软件的具体实现,当软件内部实现发生变化时,测试用例仍然可以使用
黑盒测试用例的设计可以和软件开发同时进行,这样能够压缩总的开发时间
黑盒测试适用于各个测试阶段
从产品功能角度进行测试
13、黑盒测试缺点
某些代码得不到测试
无法发现软件需求说明书本身的错误
不易进行充分性测试
对一些外购软件,参数化软件包以及某些自动生成的软件,由于无法得到源程序,只能选择黑盒测试对其进行测试
驱动模块:用以模拟被测模块的上级模块,用来驱动或传送测试用例给被测模块。
桩模块:模拟被测程序被调用模块,以便检查被测模块与其下级模块之间的接口
9、什么是兼容性测试
检测软件之间能否正确地交互和共享信息,其目标是保证软件按照用户期望的方式进行交互,是用其他软件检查软件操作过程。
黑盒测试定义
黑盒测试是在已知软件产品的功能设计的情况下,对其进行测试,以确认其是否实现了软件产品的功能要求。
处理这类问题的一个非常有力的分析和表达工具是决策表,或判定表(Decision Table)
2、判定表的组成
条件桩、条件项、动作桩、动作项和规则
3、适合使用决策表设计测试用例的情况有
①规格说明以判定表形式给出,或是很容易转换成判定表。
②条件的排列顺序不会也不应影响执行哪些操作。
③规则的排列顺序不会也不应影响执行哪些操作。
黑盒测试不考虑程序内部的逻辑结构和内部特性,只依据软件的需求功能说明进行
10、动态测试的基本要素:被测试程序,测试用例
11、黑盒测试具体任务
是否有不正确的功能,是否有遗漏的功能
在接口上,是否能够正确地接收输入数据并产生正确的输出结果
是否有数据结构错误或外部信息访问错误
性能上是否能够满足要求,是否有程序初始化和终止方面的错误
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、弱健壮等价类(强一般等价类+其中一个变量取无效值,其他变量取有效值的情况)
分析原因和结果:
原因:
相关文档
最新文档