收藏 分销(赏)

软件测试方法黑盒测试练习题市公开课一等奖省赛课微课金奖课件.pptx

上传人:人****来 文档编号:5469149 上传时间:2024-11-10 格式:PPTX 页数:111 大小:1.43MB
下载 相关 举报
软件测试方法黑盒测试练习题市公开课一等奖省赛课微课金奖课件.pptx_第1页
第1页 / 共111页
软件测试方法黑盒测试练习题市公开课一等奖省赛课微课金奖课件.pptx_第2页
第2页 / 共111页
软件测试方法黑盒测试练习题市公开课一等奖省赛课微课金奖课件.pptx_第3页
第3页 / 共111页
软件测试方法黑盒测试练习题市公开课一等奖省赛课微课金奖课件.pptx_第4页
第4页 / 共111页
软件测试方法黑盒测试练习题市公开课一等奖省赛课微课金奖课件.pptx_第5页
第5页 / 共111页
点击查看更多>>
资源描述

1、厦门大学软件学院厦门大学软件学院软件测试课程软件黑盒测试软件测试第1页概览在本章中,我们将学习:功效性概述等价类划分边界值分析 因果图与决议表法其它测试法第2页目标完成此课程之后,学员将具备以下能力:了解功效性测试含义使用等价类划分方法设计测试用例使用边界值分析方法设计测试用例使用因果图方法设计测试用例使用决议表方法设计测试用例第3页课程目录功效性测试概述功效性测试概述功效分解等价类划分 边界值分析 因果图法 决议表法其它测试方法第4页功效性测试概述任何程序都能够看作是将从输入定义域取值映射到输出值域函数将系统看成黒盒,又称为黒盒测试黒盒实现是不需要了解,只需要知道输入和预期输出软件功效性测试

2、就是经过大量测试用例来检验软件运行效果。第5页功效性测试模型输入输出黒盒内部实现不可见测试用例第6页测试用例定义测试用例定义:(1)测试用例是为特定目标而设计一组测试输入、执行条件和预期结果。(2)测试用例是执行最小实体。测试用例特征:(1)最有可能抓住错误;(2)不是重复、多出;(3)一组相同测试用例中最有效;(4)既不是太简单,也不是太复杂。第7页测试用例定义测试用例代表性能够代表并覆盖各种合理和不合理、正当和非法、边界和越界以及极限输入数据、操作和环境设置等。测试结果可判定性即测试执行结果正确性是可判定,每一个测试用例都应有对应期望结果。测试结果可再现性即对一样测试用例,系统执行结果应该

3、是相同。第8页功效性测试优点功效性测试与软件怎样实现无关,假如实现发生改变,功效性测试用例依然可用(可重用性,面向回归测试)测试用例开发能够与软件开发同时进行,可节约软件开发时间,经过软件用例(usecase)就能够设计出大部分功效性测试用例第9页功效性测试缺点测试用例数量较大测试用例可能产生很多冗余功效性测试覆盖范围不可能到达100%第10页功效性测试方法黑盒测试主要是经过将“功效分解”,然后再按照以下方法来设计测试用例。等价类划分边界值分析因果图法决议表法其它测试方法黑盒测试方法第11页课程目录功效性测试概述功效分解功效分解等价类划分 边界值分析 因果图法 其它测试方法第12页功效分解含义

4、把软件分解为相对独立功效单元目标经过功效分解能够明确软件功效性测试内容使软件功效性测试可度量,有利于测试监督和管理第13页功效分解功效分解应把握好度不能分解得过粗不能分解得过细可提升软件功效性测试度量准确性最好按照功效需求程度分解,要求高分解细一点,要求低,能够测试粗糙一点。第14页课程目录功效性测试概述功效分解等价类划分等价类划分 边界值分析 因果图与决议表法其它测试方法第15页等价类划分等价类是指某个输入域子集合在该子集合中,各个输入数据对于揭露程序中错误都是等效,子集合中包含元素要么全部被正确处理,要么全部都没有被正确处理。所以,能够把全部输入数据划分成若干等价类,在每一个等价类中取一个

5、数据来进行测试。这么就能以较少含有代表性数据进行测试,而取得很好测试效果。第16页等价类划分等价类划分是将程序输入域(较多见)或输出域(较少见)不一样区间划分为不一样数据类,方便导出测试用例每个等价类所揭示程序错误都是等价要求此方法测试用例能各自发觉一类错误,从而降低必须开发测试用例数测试某等价类代表值就是等效于对于这一类其它值测试。比如:程序在输入小于4数得到结果5,那么使用2还是3或者都是一样第17页等价类划分等价类划分法是一个主要、惯用黑盒测试方法,它将不能穷举测试过程进行合理分类,从而确保设计出来测试用例含有完整性和代表性。举例:设计这么测试用例,来实现一个对全部实数进行开平方运算(y

6、=sqrt(x))程序测试。思索方向:因为开平方运算只对非负实数有效,这时需要将全部实数(输入域x)进行划分,能够分成:正实数、0和负实数。假设我们选定+1.4444代表正实数,-2.345代表负实数,则为该程序设计测试用例输入为+1.4444、0和-2.345。第18页等价类分类有效等价类对于程序需求说明来说是合理,有意义输入数据所组成集合利用它能够检验程序是否实现了预期功效和性能(确认过程)无效等价类对于程序需求说明来说是不合理,没有意义输入数据所组成集合利用它能够检验程序对于无效数据处理能力(验证过程)第19页等价类划分数学含义A=x=BC=y=D问题1:例子中共有多少个等价类?有效几个

7、,无效几个?问题2:写出这些等价类,这些等价类是否能够合并?问题3:最好用多少个数据来测试?测试数据是否能够降低?第20页确立等价类标准严格,能够按照变量来划分有效和无效等价类。即:-1-先按照X来划分有效等价类和无效等价类,然后再按照Y来划分有效等价类和无效等价类-2-最终再形成对应测试用例。X:有效等价类为:A=x=B;无效等价类为:xA和Bx两个无效等价类Y:有效等价类为:C=y=D;无效等价类为:yC和D=1&=50”两个无效等价类为“50”第22页确立等价类标准假如输入条件是一个布尔量,则能够确立一个有效等价类和一个无效等价类假如要求了输入数据一组值,而且程序要对每一个输入值分别进行

8、处理,这时要对每一个要求输入值确立一个有效等价类,而对于这组值之外全部值确立一个无效等价类例:程序输入例:程序输入x x取值于一个固定枚举类型取值于一个固定枚举类型1,3,7,151,3,7,15,且程序,且程序 中对这中对这4 4个数值分别进行了处理,则有效等价类为个数值分别进行了处理,则有效等价类为x=1x=1、x=3x=3、x=7 x=7、x=15x=15,无效等价类为,无效等价类为x1,3,7,15x1,3,7,15值集合。值集合。第23页确立等价类标准假如要求了输入数据必须恪守规则,则能够确立一个有效等价类(即恪守规则数据)和若干无效等价类(从不一样角度违反规则数据),比如:测试密码

9、域,要求密码必须是数字或字母有效等价类为“密码是数字和字母组合”(还能够细分)无效等价类为“密码包含汉字”、“密码包含其它符号”等假如确知已划分等价类中各元素在程序中处理方式不一样(比如字母还要区分大小写等),则应深入划分成更小等价类第24页等价类测试用例设计分析输入输出划分有效等价类、无效等价类设计测试用例,使其尽可能多覆盖有效等价类设计测试用例,使其尽可能多覆盖无效等价类第25页等价类测试用例设计在设计测试用例时,应同时考虑有效等价类和无效等价类测试用例设计。依据已列出等价类表可确定测试用例,详细过程以下:(1)首先为等价类表中每一个等价类分别要求一个唯一编号。(2)设计一个新测试用例,使

10、它能够尽可能覆盖还未覆盖有效等价类。重复这个步骤,直到全部有效等价类均被测试用例所覆盖。(3)设计一个新测试用例,使它仅覆盖一个还未覆盖无效等价类。重复这一步骤,直到全部无效等价类均被测试用例所覆盖。?3次序是否能够和2颠倒?123好还是132好?为何?第26页等价类测试用例设计针对是否对无效数据进行测试,能够将等价类测试分为 标准等价类测试和健壮等价类测试。标准等价类测试不考虑无效数据值,测试用例使用 每个等价类中一个值。健壮等价类测试主要出发点是考虑了无效等价类。对有效输入,测试用例从每个有效等价类中取一个值;对无效输入,一个测试用例有一个“无效值”,其它值均取“有效值”。健壮等价类测试存

11、在两个问题:(1)需要花费精力定义无效测试用例期望输出(2)对强类型语言没有必要考虑无效输入,程序能够自己检测。第27页举例1(保险费率计算)按照输入域划分等价类例子。某保险企业负担人寿保险,该企业保费计算方式为:保费=投保额*保险率,保险率依点数不一样而有别,10点以上(含10点)费率为0.6%,10点以下费率为0.1%点数计算是年纪、性别、婚姻、抚养人数所得点数总和输入:年纪、性别、婚姻、抚养人数输出:保险率第28页输入数听说明年纪20396点40594点99以下59以上、20以下1以上2点性别男5点女3点婚姻已婚3点未婚5点抚养人数1人扣0.5点最多扣3点(四舍五入)第29页第一步:输入

12、和输出变量确认按照输入域划分等价类例子。输入:年纪、性别、婚姻、抚养人数输出:保险率等价类划分标准:按照输入变量来确认等价类(有效等价类和无效等价类)第30页第二步:等价类划分输入年纪有效等价类2039(6点)(1)4059(4点)(2)6099、119(2点)(3)无效等价类空白(未知)(4)99(未知)(6)包含非数字字符(未知)(7)性别有效等价类男(5点)(8)女(3点)(9)婚姻有效等价类已婚(3点)(10)未婚(5点)(11)是否能够有更多无效等价类?第31页第二步:等价类划分输入抚养人数有效等价类12(1点)(12)34(2点)(13)4(3点)(14)无效等价类空白(未知)(1

13、5)=10点(0.6%)(18)10点(0.1%)(19)第32页第三步:设计测试用例按照输入域划分等价类例子。1、设计测试用例,尽可能覆盖还未覆盖有效等价类。(1)(8)(10)(12)(2)(9)(11)(13)(3)(8)(10)(14)2、设计测试用俐,使得每一个新设计测试用例只包含一个无效等价类,其它选择有效等价类。(4)(8)(10)(12)(5)(9)(11)(13)(6)(8)(10)(14)(7)(8)(10)(14)(1)(8)(10)(15)(2)(9)(11)(16)(3)(8)(10)(16)说明:在设计无效部分测试用例时候,有效等价类部分,能够任意选择。第33页第四

14、步:选取测试用例用例编号输入输出备注年纪性别婚姻抚养人数保险率122男已婚10.6%(1)(8)(10)(12)(18)13点245女未婚40.1%(2)(9)(11)(13)(19)8点365男已婚80.1%(3)(8)(10)(14)(19)7点4空白男未婚1错误(4)5-1男未婚2错误(5)6122男未婚8错误(6)7“tt1”女已婚1错误(7)822女已婚空白错误(15)922女已婚-1错误(16)1022女未婚“ct2”错误(17)第34页思索1、是否能够按照输出域来设计测试用例?2、按照输入域设计结果和按照输出域设计结果会有何不一样?第35页举例2(三角形问题)按照输出域划分等价类

15、例子。1、输入3个整数变量a、b、c2、a、b和c均在1100之间3、a、b和c任意2个加起来大于第三个4、测试是否为等边三角形、等腰三角形、普通三角形和非三角形。第36页第一步:输入和输出变量确认按照输入域划分等价类例子。输入:三个变量(a、b、c);a、b和c都在1到100之间。输出:是否为三角形或各类三角形?分析:输入域较为复杂,极难明晰界定。输出域则较为清楚。等价类划分标准:按照输出变量来确认等价类(有效等价类和无效等价类)第37页第二步:等价类划分输出域有效等价类等边三角形(1)等腰三角形(2)普通三角形(3)非三角形(4)a无效等价类100(6)b无效等价类100(8)c无效等价类

16、100(10)增加测试用例第38页思索1、什么情况下按照输入域来设计测试用例?什么情况下按照输出域来设计测试用例?2、等价类划分在我们编程过程中对哪些模块比较有效?为何?A、录入模块;B、查询模块;C、报表模块;D、算法模块;E、逻辑处理模块。第39页课堂实际应用:有一个员工管理系统,现对其录入模块进行测试。其中,人员信息包含:1、编号:必须有,系统自动编号;2、姓名:必须有,要求为不超出5个汉字;3、身份证:必须有,长度为15或18位置,末尾为数字或X,注意大小写;4、邮箱:要么为空白,输入必须包含和.5、年纪:18-80之间数字6、住址:能够空白注意:假如录入正确,则提醒录入成功,录入错误

17、,则提醒数据不对。要求:1、确认输入域和输出域;2、划出有效等价类和无效等价类;3、给出测试用例个数。4、请大家上来介绍自己划分。第40页课程目录功效性测试概述功效分解等价类划分 边界值分析边界值分析 因果图与决议表法其它测试方法第41页边界值分析边界值分析法就是对输入或输出边界值进行测试一个黑盒测试方法。通常边界值分析法是作为对等价类划分法补充,这种情况下,其测试用例来自等价类边界。为何使用边界值分析法?无数测试实践表明,大量故障往往发生在输入定义域或输出值域边界上,而不是在其内部。所以,针对各种边界情况设计测试用例,通常会取得很好测试效果。怎样用边界值分析法设计测试用例?(1)首先确定边界

18、情况。通常输入或输出等价类边界就是应该着重测试边界情况。(2)选取恰好等于、刚才大于或刚才小于边界值作为测试数据,而不是选取等价类中经典值或任意值。第42页举例常见边界值对16-bit整数而言32767和-32768是边界屏幕上光标在最左上、最右下位置报表第一行和最终一行数组元素第一个和最终一个循环第0次、第1次和倒数第2次、最终一次第43页边界值分析数学含义A=x=BC=y=D第44页确立边界值标准假如输入条件或输出条件要求了值范围而且有效条件包含了值边界,可分别对边界和略超出边界取值,比如:数据范围是1=x=50正整数边界值取为:1、50、0、51假如输入条件或输出条件要求了值范围而且有效

19、条件不包含了值边界,可分别对边界和略处于边界内取值,比如:数据范围是1x输入(i)=0输出(a)=0和(b)Error测试用例有两个:输入4,输出2。对应于(ii)和(a)。输入-10,输出0和错误提醒。对应于(i)和(b)。边界值分析:划分(ii)边界为0和最大正实数;划分(i)边界为最小负实数和0。由此得到以下测试用例:输入最小负实数输入绝对值很小负数输入0输入绝对值很小正数输入最大正实数第48页举例(找零钱最正确组合)假设商店商品价格X皆小于100元(整数),若用户买一件商品,付款Y在100元内,求找给用户最少货币张数?货币面值:50元R5020元R2010元R105元R52元R21元R

20、1第49页分析输入X1000X=100X100X=Y=100YX第50页分析输出0=R50=10=R20=20=R10=10=R5=10=R2=20=R1100X100Y=50找R5020=S50找R2010=S20找R105=S10找R52=S5找R21=S100错误X=0错误0X100错误0X=100,Y100;0X=100;X100;0Y=100;Y=0思索3:这个等价类划分是否测试充分?遗漏了什么情况?思索4:假如按照输出结果划分等价类,效果怎样?思索5:应用输入结果等价类划分测试与边界值分析相比,哪一个更简便,哪一个有效?怎样协调?第58页边界值分析主题思想采取边界值分析测试基本思想

21、是:故障往往出现在输入变量边界值附近。所以,边界值分析法利用输入变量最小值(min)、略大于最小值(min+)、输入值域内任意值(nom)、略小于最大值(max-)和最大值(max)来设计测试用例。边界值分析法是基于可靠性理论中称为“单故障”假设,即有两个或两个以上故障同时出现而造成软件失效情况极少,也就是说,软件失效基本上是由单故障引发。所以,在边界值分析法中获取测试用例方法是:(1)每次保留程序中一个变量,让其余变量取正常值,被保留变量依次取min、min+、nom、max-和max。(2)对程序中每个变量重复(1)。第59页边界值分析法测试用例例:例:有两个输入变量x1(ax1b)和x2

22、(cx2d)程序F边界值分析测试用例以下:,x1x2a bcd第60页边界值分析法测试用例例例2:有二元函数f(x,y),其中x1,12,y1,31。则采取边界值分析法设计测试用例是:,推论:对于一个含有推论:对于一个含有n个变量程序,采取边界值分析法测试程序会产生个变量程序,采取边界值分析法测试程序会产生4n+1个测试用例。个测试用例。练习:练习:有函数f(x,y,x),其中x1900,2100,y1,12,z1,31。请写出该函数采取边界值分析法设计测试用例。,第61页健壮性测试用例健壮性测试是作为边界值分析一个简单扩充,它除了对变量5个边界值分析取值外,还需要增加一个略大于最大值(max

23、+)以及略小于最小值(min-)取值,检验超出极限值时系统情况。所以,对于有n个变量函数采取健壮性测试需要6n+1个测试用例。前面例1中程序F健壮性测试以下列图所表示:x1x2a bcd第62页等价类划分与边界值分析结合回到等价类划分例子结合边界值分析和等价类划分,能够到达更加好测试目标第63页举例(三角形问题)输入3个数:1=a、b、c=100测试是否为等边三角形、等腰三角形、普通三角形或非三角形思索:怎样按照等价类划分和边界值分析相结合设计测试用例?第64页举例(三角形问题)1、按照输出结果来划分等价类,分为等边三角形、等腰三角形、普通三角形、非三角形2、边界值分析:a取值:1、2、50、

24、99、100b取值:1、2、50、99、100c取值:1、2、50、99、100a、b、c分别增加健壮性测试0和101等测试取值。测试用例共有多少个?第65页等价类划分与边界值分析结合思索:有效等价类和边界值分析主要是基于什么标准来设计测试用例?它们都没有考虑到变量相关性。第66页课程目录功效性测试概述功效分解等价类划分 边界值分析 因果图与决议表法因果图与决议表法其它测试方法第67页因果图法介绍因果图法产生背景:等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件各种组合、输入条件之间相互制约关系。这么即使各种输入条件可能犯错情况已经测试到了,但多个输入条件组合起来可能犯错情

25、况却被忽略了。因果图法能够帮助测试人员按照一定步骤,高效率开发测试用例,以检测程序输入条件各种组合情况,它是将自然语言转化为形式语言规格说明一个严格方法,能够指出规格说明存在不完整性和二义性。第68页因果图法介绍因果图法是基于这么一个思想:一些程序功效能够用判定表(或称决议表)形式来表示,并依据输入条件组合情况要求对应操作。即:因果图法不过是决议表法前期阶段。我们也能够直接应用决议表。因果图法定义:是一个利用图解法分析输入各种组合情况,从而设计测试用例方法,它适合于检验程序输入条件各种组合情况。采取因果图法设计测试用例步骤:(1)依据程序规格说明书描述,分析并确定因(输入条件)和果(输出结果或

26、程序状态改变),画出因果图。(2)将得到因果图转换为判定表。(3)为判定表中每一列所表示情况设计一个测试用例。第69页判定表介绍在一些数据处理问题中,一些操作依赖多个逻辑条件取值。处理这类问题一个非常有力分析和表示工具是判定表一些软件功效需求可用判定表表示得非常清楚,在检验程序功效时判定表也就成为一个非常有力工具第70页判定表介绍决议表通常由以下4部分组成:条件桩列出问题全部条件条件项针对条件桩给出条件列出全部可能取值动作桩列出问题要求可能采取操作动作项指出在条件项各组取值情况下应采取动作 条件桩条件桩动作桩动作桩 条件项条件项 动作项动作项规规则则将任何一个条件组合特定取值及对应要执行动作称

27、为一条规则。在决议表中贯通条件项和动作项一列就是一条规则。第71页判定表图示1:表示为是或者取该值;0:表示为否或者不取该值;:表示该值取什么都能够。第72页判定表举例规则取值12345678问题以为疲惫YYYYNNNN感兴趣吗YYNNYYNN糊涂吗?YNYNYNYN建议重读继续跳下一章休息条件桩动作桩条件项动作项第73页因果图法步骤 分析软件规格说明描述中因果关系(输入与输出因果关系)找出原因与结果、原因与原因之间对应关系,画出因果图在因果图上标识约束或限制条件把因果图转化为判定表将判定表中每一列拿出来设计测试用例 第74页因果图介绍因果图中使用4种因果关系符号来表示因果关系:c c1 1e

28、 e1 1恒等c c1 1e e1 1非c c1 1e e1 1或c c2 2c c3 3c c1 1e e1 1与c c2 2第75页因果图介绍因果图中4种基本关系在因果图基本符号中,图中左结点ci表示输入状态(或称原因),右结点ei表示输出状态(或称结果)。ci与ei取值0或1,0表示某状态不出现,1则表示某状态出现。恒等:若c1是1,则e1也为1,不然e1为0。非:若c1是1,则e1为0,不然e1为1。或:若c1或c2或c3是1,则e1为1,不然e1为0。与:若c1和c2都是1,则e1为1,不然e1为0。第76页因果图介绍因果图中约束在实际问题中输入状态相互之间、输出状态相互之间可能存在

29、一些依赖关系,称为“约束”。对于输入条件之间约束有E(Exclusiveor)、I(In)、O(Only)、R(Request)四种约束,对于输出条件约束只有M(Mandate)约束。(1)原因与原因之间约束E约束(异):输入a和b中最多有一个可能为1,即a和b不能同时为1。I约束(或):输入a、b、c中最少有一个必须为1,即a、b、c不能同时为0。O约束(唯一):输入a和b必须有一个且仅有一个为1。R约束(要求):输入a是1时,输入b必须是1,即a为1时,b不能为0。(2)结果与结果之间约束M约束(强制):若结果a为1,则结果b强制为0。第77页因果图介绍因果图中用来表示约束关系约束符号:a

30、 ab b异异Ea ab b或或Ic ca ab b唯一唯一ORa ab b要求要求Ma ab b强制强制第78页因果图法主题思想因果图法最终生成是决议表。利用因果图生成测试用例基本步骤以下:(1)分析软件规格说明中哪些是原因(即输入条件或输入条件等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。(即:找出原因和结果)(2)分析软件规格说明中语义,找出原因与结果之间、原因与原因之间对应关系,依据这些关系画出因果图。(即:标定因果关系)(3)因为语法或环境限制,有些原因与原因之间、原因与结果之间组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。(

31、4)把因果图转换为决议表。(5)依据决议表中每一列设计测试用例。第79页因果图法案例 第一列字符必须是#或*,第二列字符必须是一个数字,在此情况下进行文件修改。但假如第一列字符不正确,则给出信息L;假如第二列字符不是数字,则给出信息M。解题步骤(1)分析程序规格说明,列出原因和结果。(2)找出原因与结果之间因果关系、原因与原因之间约束关系,画出因果图。(3)将因果图转换成决议表。(4)依据(3)中决议表,设计测试用例输入数据和预期输出。第80页因果分析原因:c1第一列字符是#c2第一列字符是*c3第二列字符是一数字10第一列字符是#或是*结果:e1给出信息Le2修改文件e3给出信息M第81页因

32、果分析(1)分析程序规格说明中原因和结果:(2)画出因果图(编号为10中间结点是导出结果深入原因):原因结果c1:第一个字符是#e1:给出信息Lc2:第一个字符是*e2:修改文件c3:第二个字符是一个数字e3:给出信息Mc1c2c3e110e2e3E不可能同时存在第82页由因果图建立判定表(3)将因果图转换成以下所表示决议表:12345678条件:条件:C1C2C310111110101110010111010100100000动作:动作:e1e2e3不可能不可能测试用例测试用例#3#A*6*BA1GT规则规则选项选项第83页从决议表中得到测试用例(4)依据决议表中每一列设计测试用例:测试用例

33、编号输入数据预期输出1#3修改文件2#A给出信息M3*6修改文件4*B给出信息M5A1给出信息N6GT给出信息N和信息M第84页思索1、什么情况下按照因果图和决议表法来设计测试用例?是否能够不用因果图,不画因果图直接来设计测试用例,这普通是在什么情况下?2、因果图与决议表法在我们编程过程中对哪些模块比较有效?为何?A、录入模块;B、查询模块;C、报表模块;D、算法模块;E、逻辑处理模块。第85页课堂练习(中国象棋走马下法)1、以中国象棋中马走法为例子,详细说明:1、假如落点在棋盘外,则不移动棋子;2、假如落点与起点不组成日字型,则不移动棋子;3、假如落点处有自己方棋子,则不移动棋子;4、假如在

34、落点方向邻近交叉点有棋子(绊马腿),则不移动棋子;5、假如不属于1-4条,且落点处无棋子,则移动棋子;6、假如不属于1-4条,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子;7、假如不属于1-4条,且落点处为对方老将,则移动棋子,并提醒战胜对方,游戏结束。请绘制出因果图和判定表,并给出对应测试用例。第86页课堂练习(中国象棋走马下法)第一步:分析原因和结果原因:1、落点在棋盘外;2、不组成日字;3、落点有自方棋子;4、绊马腿;5、落点无棋子;6、落点为对方棋子;7、落点为对方老将。结果:21、不移动;22、移动;23、移动己方棋子消除对方棋子;24、移动并战胜对方。第87页课堂练习(中

35、国象棋跳马下法)第二步:画出因果图能够判定程序中应该包含12个函数或方法第88页课堂练习(中国象棋走马下法)第三步:转换成判定表第89页课堂练习(自动售货机)2、有一个处理单价为5角钱饮料自动售货机,其规格说明以下:(1)若投入5角钱或1元钱硬币,押下橙汁或啤酒按钮,则对应饮料就送出来。(2)若售货机没有零钱找,则一个显示零钱找完红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;(3)若有零钱找,则显示零钱找完红灯灭,在送出饮料同时退还5角硬币。请绘制出因果图和判定表,并给出对应测试用例。第90页课堂练习(自动售货机)第一步:分析原因和结果原因:1、售货机有零钱找2、投

36、入1元硬币3、投入5角硬币4、押下橙汁按钮5、押下啤酒按钮结果:21、售货机零钱找完灯亮22、退还1元硬币23、退还5角硬币24、送出橙汁饮料25、送出啤酒饮料第91页课堂练习(自动售货机)第二步:画出因果图第92页课堂练习(自动售货机)第二步:画出因果图全部原因结点列在左边,全部结果结点列在右边。建立中间结点,表示处理中间状态。中间结点:11、投入1元硬币且押下饮料按钮12、押下橙汁或啤酒按钮13、应该找5角零钱而且售货机有零钱找14、钱已付清第93页课堂练习(自动售货机)第三步:转换成判定表第94页因果图法总结优点优点1、因果图法能够帮助我们按照一定步骤,高效选择测试用例,设计多个输入条件

37、组适用例2、因果图分析还能为我们指出,软件规格说明描述中存在问题3、能够依据因果图检验需求逻辑和程序未来应包含函数或方法。缺点缺点1、输入条件与输出结果因果关系,有时难以从软件需求规格说明书得到。2、即时得到了这些因果关系,也会因为因果关系复杂造成因果图非常庞大,测试用例数目极其庞大(需要使用正交表法简化需要使用正交表法简化)。第95页思索1、因果图法设计测试用例最关键步骤是什么?(1)找出原因和结果;(2)画出正确因果图。2、假如原因众多,我们怎么办?按照原因与原因或结果之间关联关系,将原因和结果之间因果图细分来分成更小因果图来测试。第96页习题1、某软件一个模块需求规格说明书中描述:(1)

38、年薪制员工:严重过失,扣年底风险金4%;过失,扣年底风险金2%。(2)非年薪制员工:严重过失,扣当月薪资8%;过失,扣当月薪资4%。请绘制出因果图和判定表,并给出对应测试用例。第97页课程目录功效性测试概述功效分解等价类划分 边界值分析 因果图法 其它测试方法其它测试方法第98页随机测试使用随机数生成器选取测试用例值防止测试偏见(只选取边界值)存在问题:测试用例是否充分第99页错误推测法 错误推测法是基于经验和直觉推测程序中全部可能存在各种错误,从而有针对性地设计测试用例第100页错误推测法基本思想列举出程序中全部可能有错误和轻易发生错误特殊情况来设计测试用例比如:以前测试时曾出现过失误地方,

39、包含单元测试、集成测试、系统测试、前几次回归测试输入数据问题,如是否可为空,是否能够有特殊字符,是否能够小于0、等于0等等一些问题范围或边界第101页测试方法选择通常在确定测试策略时,有以下5条参考标准:(1)在任何情况下都必须采取边界值分析法。这种方法设计出测试用例发觉程序错误能力最强。(2)必要时采取等价类划分法补充测试用例。(3)采取错误推断法再追加测试用例。(4)对照程序逻辑,检验已设计出测试用例逻辑覆盖程度。假如没有到达要求覆盖标准,则应该再补充更多测试用例。(5)假如程序功效说明中含有输入条件组合情况,则应一开始就选取因果图法。第102页测试方法选择通常在确定测试策略时,有以下5条

40、参考标准:(1)在任何情况下都必须采取边界值分析法。这种方法设计出测试用例发觉程序错误能力最强。(2)必要时采取等价类划分法补充测试用例。(3)采取错误推断法再追加测试用例。(4)对照程序逻辑,检验已设计出测试用例逻辑覆盖程度。假如没有到达要求覆盖标准,则应该再补充更多测试用例。(5)假如程序功效说明中含有输入条件组合情况,则应一开始就选取因果图法。第103页习题1、某城市电话号码由三部分组成,分别是:地域码空白或三位数字;前缀非0或1开头三位数字;后缀4位数字。假定被测程序能接收一切符合上述要求电话号码,拒绝全部不符合要求电话号码。要求:(1)请选择适当黑盒测试方法,写出选择该方法原因,并使

41、用该方法步骤,给出测试用例表。(2)假如所生成测试用例不够全方面,请考虑用别测试方法生成一些补充测试用例。第104页多于多于3位数字位数字少于少于3位数字位数字有非数字字符有非数字字符 空白空白3位数字位数字地域码地域码编号编号无效等价类无效等价类编号编号有效等价类有效等价类输入条件输入条件前缀前缀200999有非数字字符有非数字字符起始位为起始位为0起始位为起始位为1少于少于3位数字位数字多于多于3位数字位数字后缀后缀4位数字位数字有非数字字符有非数字字符少于少于4位数字位数字多于多于4位数字位数字341256789101112131415使用等价类划分法第105页测试用例测试用例编号编号输

42、入数据输入数据预期输出预期输出地域码前缀前缀后缀后缀1空白空白1234567接收(有效)21238059876接收(有效)320A1234567拒绝(无效)拒绝(无效)4332345678拒绝(无效)拒绝(无效)512342344567拒绝(无效)拒绝(无效)61232B31234拒绝(无效)拒绝(无效)71230131234拒绝(无效)拒绝(无效)81231231234拒绝(无效)拒绝(无效)9123231234拒绝(无效)拒绝(无效)1012323451234拒绝(无效)拒绝(无效)111232341B34拒绝(无效)拒绝(无效)1212323434拒绝(无效)拒绝(无效)13123234

43、23345拒绝(无效)拒绝(无效)覆盖等价类覆盖等价类1,3,42,3,456789101112131415第106页本课补充1、正交试验设计法设计测试用例2、正交试验设计法有利之处第107页本课总结功效性测试方法主要有三种:等价类划分、边界值分析、因果图法、正交矩阵法等方法四种方法各有优势,应灵活使用第108页课后习题第一题:总结各种黑盒测试方法应用场景及其优缺点。第二题:分析什么时候输入进行等价类划分;什么时候应用输出做等价类划分测试。第109页课后习题第三题:使用等价类划分方法,选择一个程序实例进行测试。第四题:查询网络资源,深入深化了解因果图法在需求分析、系统设计、软件测试中应用。第110页Thanks!第111页

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服