边界值分析报告法+场景法
- 格式:doc
- 大小:273.25 KB
- 文档页数:9
黑盒测试的7种测试方法黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。
在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。
黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。
很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。
黑盒测试有7种测试方法分别是等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、功能图法、正交实验法。
下面将一一介绍。
等价类划分法等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。
该方法是一种重要的,常用的黑盒测试用例设计方法。
1、划分等价类:等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。
并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。
因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据。
取得较好的测试结果。
等价类划分可有两种不同的情况:有效等价类和无效等价类。
有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合。
利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
无效等价类:与有效等价类的定义恰巧相反。
设计测试用例时,要同时考虑这两种等价类。
因为,软件不仅要能接收合理的数据,也要能经受意外的考验。
这样的测试才能确保软件具有更高的可靠性。
2、划分等价类的方法:下面给出六条确定等价类的原则。
①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、场景法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。
这些方法是比较实用的,但采用什么方法,在使用时自然要针对开发项目的特点对方法加以适当的选择。
等价类划分法等价类划分是一种典型的黑盒测试方法,用这一方法设计测试用例完全不考虑程序的内部结构,只根据对程序的需求和说明,即需求规格说明书。
由于穷举测试工作量太大,以致于无法实际完成,促使我们在大量的可能数据中选取其中的一部分作为测试用例。
等价类划分法等价类划分法是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据当作测试用例。
每一类的代表性数据在测试中的作用等价于这一类中的其他值,也就是说,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误;反之,如果某一类中的一个例子没有发现错误,则这一类中的其他例子也不会查出错误。
使用这一方法设计测试用例,首先必须在分析需求规格说明的基础上划分等价类,列出等价类表。
划分等价类和列出等价类表可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据取得较好的测试结果。
等价类划分有两种不同的情况:有效等价类:是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。
利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
无效等价类:与有效等价类的定义恰巧相反。
设计测试用例时,要同时考虑这两种等价类。
因为软件不仅要能接收合理的数据,也要能经受意外的考验。
这样的测试才能确保软件具有更高的可靠性。
确定等价类的原则在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类。
在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。
白盒测试用例设计方式:常常利用的黑盒测试用例设计方式有等价类划分法、边界值测试法、决策表法、错误猜想法和场景法,在进展黑盒测试用例设计时的主要依据是软件系统规格说明书,因此在进展黑盒测试之前必需保证软件系统规格说明书是通过审核的,若是未经审核,那么需要进展探索式测试。
等价类划分法是指将输入数据进展等价类划分,划分依据为系统的预期结果,隶属于同一个等价类的输入数据会引发一样的预期结果,而且吻合一样的输入标准。
边界值测试法是对等价类划分法的一种补充,对于每一个等价类来讲,都会存在类的边缘,经研究证明,边缘的数据更易在系统运行中产生问题,因此边界值方式是一种超级必要的方式。
决策表方式适合于解决多个逻辑条件的组合。
判定表包括条件桩、条件项、动作桩、动作项。
条件桩中列出所有执行条件,顺序无关;条件项中列出所对应条件的所有可能情况下的取值;动作桩中列出可能采取的操作,顺序无关;动作项中列出条件项各类取值情况下采取的操作。
错误推测法概念:基于经历和直觉推测程序中所有可能存在的各类错误, 从而有针对性的设计测试用例的方式。
错误推测方式的根本思想:列举出程序中所有可能有的错误和容易发生错误的特殊情况,按照他们选择测试用例。
场景法:ERP系统本身是一种业务流程很复杂,单据报表众多,逻辑性很强的系统,质量保证方面很宝贵到严格的控制的软件系统,在测试进程中常常会出现测试设计遗漏、测试执行遗漏等问题发生,一般的ERP系统设计可能包括以下几方面:、业务流程测试、数据逻辑测试、接口测试、兼容性测试、、易用性测试、用户体验测试等等;在针对ERP系统的测试进程中,必需具有清楚的测试设计思路,搭建根本的测试设计框架;其次熟悉所要设计的系统或模块的业务,所要实现的功能;然后灵活运用常常利用的测试设计方式〔等价类、边界值、错误猜想、路径分析法、场景法、正交验证法……用例设计方式〕;最后运用比拟合理统一的风格和模板进展设计测试用例;“业务场景、业务流程、数据逻辑〞是关键,业务理解清楚是做好ERP测试的根底;ERP系统测试用例分为几类来写比拟好:功能用例、业务流程用例、数据逻辑用例、接口用例,最好是把功能与流程类的测试用例分开来写;就个人而言,设计覆盖率高、冗余度低的测试用例应该从以下几个方面入手:一、功能用例设计:相对而言比拟简单,按照需求规格说明书、界面原型提取测试功能点/项,运用等价类、边界值、错误猜想、正交表等根本用例设计方式来设计,结合经历积累完善用例设计就可以够弄定,难度不大;需要按照文档/功能点/业务的转变进展修订/细化用例,提高功能用例的覆盖度;关于功能用例设计的方式和有很多,都可以借鉴和参考增加自身的经历积累和和知识沉淀。
边界值分析方法一.方法简介1.定义:边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。
通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。
2.与等价划分的区别1)边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。
2)边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。
3.边界值分析方法的考虑:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。
因此针对各种边界情况设计测试用例,可以查出更多的错误。
使用边界值分析方法设计测试用例,首先应确定边界情况。
通常输入和输出等价类的边界,就是应着重测试的边界情况。
应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
4.常见的边界值1)对16-bit 的整数而言32767 和-32768 是边界2)屏幕上光标在最左上、最右下位置3)报表的第一行和最后一行4)数组元素的第一个和最后一个5)循环的第0 次、第1 次和倒数第2 次、最后一次5.边界值分析1)边界值分析使用与等价类划分法相同的划分,只是边界值分析假定错误更多地存在于划分的边界上,因此在等价类的边界上以及两侧的情况设计测试用例。
例:测试计算平方根的函数--输入:实数--输出:实数--规格说明:当输入一个0或比0大的数的时候,返回其正平方根;当输入一个小于0的数时,显示错误信息"平方根非法-输入值小于0"并返回0;库函数Print-Line可以用来输出错误信息。
2)等价类划分:I.可以考虑作出如下划分:a、输入(i)<0 和(ii)>=0b、输出(a)>=0 和(b) ErrorII.测试用例有两个:a、输入4,输出2。
对应于(ii) 和(a) 。
b、输入-10,输出0和错误提示。
0到100分设计测试用例摘要:一、测试用例设计的重要性1.软件测试的基本概念2.测试用例的作用3.测试用例设计的原则二、0到100分设计测试用例的方法1.等价类划分法2.边界值分析法3.错误推测法4.场景法5.因果图法6.判定表驱动法7.功能图法三、测试用例设计的实践与优化1.确定测试目标2.分析需求和功能3.选择合适的测试用例设计方法4.制定测试计划5.执行测试用例6.分析测试结果7.优化测试用例设计四、总结1.测试用例设计在软件测试中的重要性2.不同测试用例设计方法的优缺点3.如何提高测试用例设计的质量和效率正文:一、测试用例设计的重要性软件测试是保证软件质量的关键环节,而测试用例设计则是软件测试的核心。
测试用例是测试人员进行测试的依据,通过对软件的各种输入和操作进行验证,以发现潜在的缺陷和问题。
一个好的测试用例设计可以有效提高软件的质量和稳定性,减少开发和维护成本,提升用户体验和满意度。
二、0到100分设计测试用例的方法1.等价类划分法:将可能的输入数据分为相似的组,每组中的数据都能使被测程序产生相同的输出。
等价类划分法可以有效减少测试用例数量,提高测试效率。
2.边界值分析法:针对程序的边界条件进行测试,边界值分析法有助于发现程序在边界情况下的逻辑错误和异常行为。
3.错误推测法:基于程序员的经验和直觉,推测程序中可能存在的错误,设计测试用例进行验证。
4.场景法:根据实际场景和用户需求,模拟用户操作和程序运行过程,设计测试用例。
5.因果图法:通过分析程序输入与输出之间的因果关系,设计测试用例。
6.判定表驱动法:根据程序的逻辑判断条件,设计测试用例,用于验证程序的分支和循环逻辑。
7.功能图法:通过绘制程序功能图,分析各功能模块之间的接口和调用关系,设计测试用例。
三、测试用例设计的实践与优化1.确定测试目标:明确测试的目的和范围,为测试用例设计提供依据。
2.分析需求和功能:深入了解软件需求和功能,找出潜在的测试需求和风险点。
黑盒测试是一种基于证明功能需求和用户最终需求的测试方法,设计黑盒测试用例的方法有如下8种:等价类划分法。
边界值分析法。
因果图法。
判定表驱动测试。
场景法。
功能图法。
错误推测法。
正交试验设计法。
在实际测试工作中,往往是综合使用各种方法才能有效地提高测试效率和测试覆盖率,这就需要认真掌握这些方法的原理,积累更多的测试经历,以有效地提高测试水平和测试效率。
下面就将主要介绍这8种设计黑盒测试用例的方法。
等价类划分等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据〔有效的和无效的〕划分成假设干个等价类。
然后从每个局部中选取具有代表性的数据当做测试用例进展合理的分类,测试用例由有效等价类和无效等价类的代表组成,从而保证测试用例具有完整性和代表性。
利用这一方法设计测试用例可以不考虑程序的部构造,以需求规格说明书为依据,选择适当的典型子集,认真分析和推敲说明书的各项需求,特别是功能需求,尽可能多地发现错误。
由于等价类是在需求规格说明书的根底上进展划分的,并且等价类划分不仅可以用来确定测试用例中的数据的输入输出的准确取值围,也可以用来准备中间值、状态和与时间相关的数据以及接口参数等,所以等价类可以用在系统测试、集成测试和组件测试中,在有明确的条件和限制的情况下,利用等价类划分技术可以设计出完备的测试用例。
这种方法可以减少设计一些不必要的测试用例,因为这种测试用例一般使用一样的等价类数据,从而使测试对象得到同样的反映行为。
对于等价类我们从以下几个方面讨论它的划分方法。
1、等价类划分等价类可以划分为有效等价类和无效等价类。
〔1〕有效等价类有效等价类指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。
利用有效等价类可以检验程序是否实现了规格说明预先规定的功能和性能。
有效等价类可以是一个,也可以是多个,根据系统的输入域划分假设干局部,然后从每个局部中选取少数有代表性数据当做数据测试的测试用例,等价类是输入域的集合。
软件测试技术(习题卷8)第1部分:单项选择题,共56题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]黑盒测试用例设计方法包括( )等A)等价类划分法、因果图法、正交试验设计法、功能图法、路径覆盖法、语句覆盖法B)等价类划分法、边界值分析法、判定表驱动法、场景法、错误推测法、因果图法、正交试验设计法、功能图法C)因果图法、边界值分析法、判定表驱动法、场景法、Z路径覆盖法D)场景法、错误推测法、因果图法、正交试验设计法、功能图法、域测试法答案:B解析:2.[单选题]软件测试是软件质量保证的重要手段,下列( )是软件测试的任务。
①预防软件发生错误;②发现改正程序错误;③提供诊断错误信息。
A)①B)②C)③D)以上都对答案:D解析:3.[单选题]在软件测试前,需要确定软件测试的优先级,优先级越高的测试项,应优先得到测试,如下哪个因素是与测试优先级最不相关的( )。
A)测试的难易程度B)开发修正缺陷的容易程度C)容易出错的测试项D)客户最常使用的产品特性答案:A解析:4.[单选题]( )是选择若干个测试用例,运行被测程序,使得程序中的每个可执行语句至少执行一次。
A)条件覆盖B)组合覆盖C)判定覆盖D)语句覆盖答案:D解析:5.[单选题]我做事不喜欢半途而废A)强烈同意B)同意C)不同意D)最不同意答案:A解析:6.[单选题]走查主要包括以下哪些内容( ) ①检查代码和设计的一致性 ②标准的遵循和可读性 ③评审对象主要是软件A)②③B)②③④C)①②③④D)①②③答案:C解析:7.[单选题]不属于单元测试内容的是( )。
A)模块接口测试B)局部数据结构测试C)独立路径测试D)用户界面测试答案:D解析:8.[单选题]下面四种说法中正确的是A)因果图法是建立在决策表法基础上的一种白盒测试方法;B)等价类划分法是边界值分析法的基础;C)健壮性等价类测试的测试用例要求在有效等价类中取值;D)在任何情况下做黑盒测试皆应首先考虑使用错误推断法。
游戏测试流程需求分析→需求评审→测试计划→用例设计→编写用例→执行用例→提交bug→回归bug→编写报告需求分析:游戏内的需求来源大部分是通过市场调研或玩家的反馈。
需求文档是通过客户方提供(游戏的需求文档也有可能是策划提供的),并告诉我们文档内对此软件的一些要求,以及此软件实现的功能。
并将文档内容转化为我们测试所需要的内容。
注意:需求文档的内容前提就要和客户鉴定清楚玩法、规则、算分等功能需求评审:产品最初设计阶段,产品专员的策划文档存在一些漏洞,需要三方(产品、开发、测试)沟通提出问题,修改问题,完善文档1、吃碰杠特效问题:分析什么效果、要什么轨迹、还有效果展示是什么怎么样2、规则需求:这个是客户提出差异最重要的,如果这块和客户确定不清楚,开发做出不仅浪费开发、测试、项目周期还会导致项目出现风险3、鉴定清楚功能上的一些限制的要求:登录、密码等测试计划:测试经理会编写一份测试计划,包括测试内容,进度安排,测试资料,人员要求等。
测试计划编写六要素(5W1H)1.why——为什么要进行这些测试;2.what—测试哪些方面,不同阶段的工作内容;3.when—测试不同阶段的起止时间;4.where—相应文档,缺陷的存放位置,测试环境等;5.who—项目有关人员组成,安排哪些测试人员进行测试6.how—如何去做,使用哪些测试工具以及测试方法进行测试。
用例设计:用例设计是检验一个测试人员是否合格的重要指标常规测试方法也是一个重要技能,需要在面试时体现出来用例设计之前,先对需求文档内容进行分析测试点(通过思维导图或流程图)用例设计需要注意的地方:1.考虑问题的全面性2.逆向思维:例如游戏的吃碰杠、海底捞月、天胡、过碰、还有特殊玩法、断线重连等3.用例设计中必不可少的模块例:前提条件、操作步骤、预期结果4.运用所学到的一些测试方法编写用例:运用所学到常用基本的黑盒测试方法:1.等价类划分2.边界值分析法3.场景法用例评审:为了避免个人思考问题的片面性,用例设计完毕后,测试人员,需要对完成的用例进行评审,提出用例中的错误、遗漏、冗余,根据评审结果修改测试用例执行用例:1.测试的依据是测试用例2.根据测试用例,测试产品,做好记录(执行通过/执行不通过/堵塞/未测试)3.测试过程中通过使用工具提高测试效率☆测试过程中可能会发现测试用例没有覆盖的地方,及时补充测试用例,或者用例编写错误的地方,也要及时修正。
第1篇一、基础知识1. 请简述软件测试的定义和目的。
解析:软件测试是确保软件产品符合预定需求和规格的过程。
其目的是发现软件中的错误或缺陷,提高软件质量,降低软件维护成本。
2. 什么是黑盒测试和白盒测试?解析:黑盒测试:不需要了解软件内部结构,主要关注软件功能是否符合需求规格说明书。
白盒测试:需要了解软件内部结构,关注代码逻辑、结构、接口等。
3. 什么是回归测试?解析:回归测试是指在软件版本更新或修改后,为了验证原有功能仍然正常,对修改的部分和与之相关的功能进行的测试。
4. 请列举三种软件测试类型。
解析:1)功能测试:验证软件功能是否符合需求规格说明书。
2)性能测试:评估软件在各种负载下的性能表现。
3)安全测试:检测软件在安全方面的脆弱性,确保数据安全。
5. 什么是缺陷管理?解析:缺陷管理是指对软件缺陷的发现、记录、跟踪、解决和验证的过程。
6. 什么是自动化测试?解析:自动化测试是指使用测试工具对软件进行测试的过程,以提高测试效率、降低成本。
二、测试方法与工具1. 请简述等价类划分法的原理和应用。
解析:等价类划分法是一种黑盒测试方法,通过将输入数据划分为若干个等价类,从每个等价类中选取一个代表性的数据作为测试用例,以减少测试用例数量。
2. 什么是边界值分析法?解析:边界值分析法是一种黑盒测试方法,关注输入数据的边界值,以验证软件在边界情况下的行为是否符合预期。
3. 请列举三种常用的性能测试工具。
解析:1)LoadRunner:一款功能强大的性能测试工具,适用于Web、Java、.NET等应用。
2)JMeter:一款开源的性能测试工具,适用于Web、Java、Database等应用。
3)Gatling:一款高性能的负载测试工具,适用于Web应用。
4. 请简述敏捷测试的特点。
解析:1)迭代:测试工作在软件开发的各个阶段进行,与开发紧密合作。
2)持续集成:测试工作与代码提交同步进行,确保软件质量。
3)自动化:使用自动化测试工具提高测试效率。
黑盒测试-边界值分析法和场景法边界值分析法:
实验1:某选课系统中规定每门课程的选修人数在[20,60]之间,小于20人不开设该门选修课,大于60人不接受后面的选课要求。
结合黑盒测试方法中等价类划分和边界值方法设计测试案例,并给出相应测试用例。
参考答案
测试设计
⏹输入变量:选课人数
⏹测试输入
⏹选择当选课人数分别为19,20,21, 59,60和61等几个边界点
⏹再加上一个正常值点40
实验 2:编写一个程序,输入某雇员的工作时间(以小时计)和每小时的工资数,计算并输出他的工资。
具体如下:
✓若雇员周工作小时小于40小时(0,40),则按原小时工资0.7来计算薪水。
✓若雇员周工作小时等于40小时,则按原小时工资计算薪水。
✓若雇员周工作小时介于40到50((40,50))小时的,超过40的部分按照原小时工资的1.5倍来计算薪水。
✓若雇员周工作小时超过50小时([50,60)),则超过50的部分按原小时工资的3倍来计算薪水。
✓超出60小时或小于0小时,提示输入有误,重新输入。
结合黑盒测试方法中等价类划分和边界值方法设计测试案例,并
给出测试用例和相应的测试结果。
参考答案
程序参考答案:
#include <stdio.h>
void main()
{
float h;
float g;
float sum; sum=0.0;
printf("请输入小时工资和工作小时数:"); scanf("%f",&h); scanf("%f",&g); if(h>0 && h<40) sum=0.7*h*g;
else if (h>=40 && h<50) sum=40*g+(h-40)*1.5*g; else if(h>=50 && h<=60)
sum=40*g+10*1.5*g+(h-50)*3*g; printf("%f",sum); }
场景分析法
实验 1 :下面是某高校选课系统的用例图,其“选课”用例的事件流描述如下:
基本流:登录,选择课程,获取课程信息,选课,提交选课请求,显示选课结果。
备选流:学生无法识别(学生学号和密码无效时,会产生错误提示)退出:(允许学生在选课过程中退出)
不满足选修条件,选课人数已满,和课程时间冲突
选课已经结束
要求:基于基本流和备选流,构造场景,并设计测试用例
实验2:有一个处理单价为5角钱的饮料的自动售货机,只允许投入5角或1元的硬币,其相应的规格说明书描述如下。
①若投入5角钱或1元钱的硬币,按下【橙汁】或【啤酒】的按钮,则相应的饮料就送出来。
(每次只投入一个硬币,只按下一种饮料的按钮。
)
②如投入5角的硬币,按下按钮后,总有饮料送出。
③若售货机没有零钱找,则【零钱找完】的红灯会亮,这时再投入1元硬币并按下按钮后,饮料不送出来而且1元硬币也退出来。
④若有零钱找,则【零钱找完】的红灯不会亮,若投入1元硬币及按饮料按钮,则送出饮料的同时找回5角硬币。
要求:(1)找出基本流和备选流
(2)构造场景
(3)设计测试用例
场景法:参考答案:
实验1:
根据事件流描述,构造事件流图
根据事件流图,构造场景覆盖从用例开始到结束的路径
《软件测试方法和应用》3-70
《软件测试方法和应用》
实验2 参考答案
(1)分析基本流和备选流
基本流:投入5角钱,按下【橙汁】或【啤酒】的按钮,则相应的饮料就送出来。
备选流:
①备选流1:【零钱找完】的红灯没亮,若投入1元硬币及按饮料按钮,则送出饮料的同时找回5角硬币。
②备选流2:【零钱找完】的红灯亮,这时投入1元硬币并按下按钮后,饮料不送出来且1元硬币也退出来。
(2)分析场景
场景1:基本流
场景2:备选流1
场景3:备选流2。