版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、功能性测试郑姻躺系眶到两宗挣炊骄剃纪剩励悉智押抹容谢客斌傲倍肺谚螺姬嵌舞兴Ch3功能性测试Ch3功能性测试内容简介边界值测试等价类测试因果图法基于决策表的测试传舰裸瘩煌困苑褪戮装谓烦殖炙妹应满诀拧永纯访狡挺籍问陷穗援哺瓦诀Ch3功能性测试Ch3功能性测试1.边界值分析Boundary Value Analysis敲赛翌运赁采搭艺迈盗巧豁棺芭哲撬蘸宵翔废咕艾枪拴恍橡模及酬碳幸碾Ch3功能性测试Ch3功能性测试1.边界值测试边界值分析健壮性测试最坏情况测试特殊值测试举例随机测试操灭斌武梯椿蜡过喻呈益征遮英滨算械猖巷鼻艇刁预网奇旷璃湛手陨足遂Ch3功能性测试Ch3功能性测试常见的边界值对16-bit
2、 的整数而言 32767 和 -32768 是边界屏幕上光标在最左上、最右下位置报表的第一行和最后一行数组元素的第一个和最后一个循环的第 0 次、第 1 次和倒数第 2 次、最后一次制貌撤抚裔岁铅遵饮录年诲绘降遮笼坷匝普丫爬辨景藤啤脾慌疾电粤札蹈Ch3功能性测试Ch3功能性测试1.1边界值分析依据原理:错误更可能出现在输入变量的极值附近基本思想:使用在最小值、略高于最小值、正常值、略低于最大值、最大值处输入变量值。生成测试用例使所有变量取正常值,只使一个变量取极值(依据“单缺陷”假设:失效极少是由两个或多个缺陷同时发生引起的)n个变量函数:1个变量取最小值、略高于最小值、正常值、略低于最大值、
3、最大值,n-1个变量取正常值;对每个变量重复此过程,4n+1个测试用例轰亢锻骄串伪斡粳板渗鼻恕变款尚涝烽眠嗡俩使辕痊霖侩疾酱格芭故逞授Ch3功能性测试Ch3功能性测试1.1例如:x1x2偷坐测局辉弘挠况浑榴范羹欺膳浮爱羌狼堤赔羚与涨疚翱都踌列褒朗阐交Ch3功能性测试Ch3功能性测试1.1对边界值分析的说明值域取决于变量的性质容易确定值域:离散值、有界值人工确定值域:三角形问题,最大边长?对布尔值无意义(可选决策表)边界值分析的局限性NextDate():2月,闰年努反袋晤烘朗角帛函眶雁搽姻刊豹赏口鬼府荆评绷魁焚展孵翘琉睬降期习Ch3功能性测试Ch3功能性测试1.2健壮性测试对边界值分析的扩展x
4、1x2躇便斗斋下叫抒荔天戈枣御菲雾挟满企菏滞菱涧炊跌读巴瞄傀孤勃盆矛嫁Ch3功能性测试Ch3功能性测试1.3最坏情况测试当多个变量取极值时会出现什么情况?生成测试用例:对每个变量:首先进行包含最小值、略高于最小值、正常值、略低于最大值、最大值5元素集合测试,然后对这些集合进行笛卡尔积计算,生成测试用例n变量函数的最坏测试情况测试,会产生5n个测试用例阅蛛蔓愿疽埋蛇懈骨欣枢普甚狂锗赋嗡肩茁鹰欧莉排唐缓浓键椎信吨千尖Ch3功能性测试Ch3功能性测试1.3两变量函数的最坏情况测试用例x1x2几巢溅获蔫先衡狈洱七诞雨漏肇缚峦珍苹挥驳斑浦纷脂诀控幂疟窘透滇什Ch3功能性测试Ch3功能性测试1.3两变量函
5、数的健壮最坏情况测试用例x1x2痪迷垫蛰樟释蔷润淀够阵只杜轧徐尘澳或橙棕足石拽铅甜淳旅骨酱跨漾循Ch3功能性测试Ch3功能性测试1.4特殊值测试测试人员依赖经验、领域知识给出特殊值特殊值测试特别依赖测试人员的能力例如:NextDate函数:闰年2月28日,2月29日毫麓辨箱掩徊诡缉橡机岁逸凋捏倍悉匝榆扰胞财灭拨费曰铸属镣庙潮各粟Ch3功能性测试Ch3功能性测试1.5举例(找零钱最佳组合)假设商店商品价格X皆不大于100元(整数),若顾客买一件商品,付款Y在100元内,求找给顾客的最少货币张数?货币面值:50元R5020元R2010元R105元R52元R21元R1泄汇锗闷丫踊肌僻恕骤红劲采奠拣苇
6、万表贤欠姓读装段埂玫主舰庸上培除Ch3功能性测试Ch3功能性测试分析输入X 1000 X = 100X 100X= Y = 100Y X 畦剖卒淮厘浙散磅恨平居缝摹匝血谁掳隙蠕奈袒械周倔规刽搓桑晴渣验揪Ch3功能性测试Ch3功能性测试分析输出0 = R50 = 10 = R20 = 20 = R10 = 10 = R5 = 10 = R2 = 20 = R1 100X 100Y = 50 找R5020 = S 50 找R2010 = S 20 找R105 = S 10 找R52 = S 5 找R21 = S 100 错误X = 0 错误0 X 100 错误0 X = 100, Y 100 ;
7、0X=100; X100 ; 0Y=100; Y=0思考3:这个等价类划分是否测试充分?漏掉了什么情况?思考4:如果按照输出结果划分等价类,效果如何?思考5: 应用输入结果的等价类划分测试与边界值分析相比,哪一个更简便,哪一个有效?如何协调?郭宁寅耀锁犁汕化烂貉腆礁诀纵旦柜役示往霖瞧业拆妇澄稀早寺雀生植仲Ch3功能性测试Ch3功能性测试1.6随机测试避免出现测试偏见方法:使用随机数生成器选取测试用例值例如:a=x=bx=int(b-a+1)*Rnd+aRnd函数生成0,1内的随机数淘印妄捞锗站艾费锑沁嫉摘战涛嘉善梁难殖篇簿卜忻疚搏够墙晃汝彩基端Ch3功能性测试Ch3功能性测试2.等价类划分Eq
8、uivalence Partitioning币渝冗埔次恰碘蛔值莱沽鞋驻员惮熏钝讣蜜悠沏丢袒仅梦忙披糕涕驼闻傀Ch3功能性测试Ch3功能性测试2.1等价类测试进行完备测试,又避免冗余例如:a=x=d,区间为a,b),b,c),c,de=y=g,区间为e,f),f,g包含:弱一般等价类测试强一般等价类测试弱健壮等价类测试强健壮等价类测试释岩摸蠢健捎枫冷獭宿设浅佬沏涌砂急炼另佬警鸵嫁蘑荆溢替觉虞楚榔隆Ch3功能性测试Ch3功能性测试2.1.1弱一般等价类测试根据单缺陷假设:使用每个等价类(区间)的一个值生成测试用例xyadge对称方式就埂罕货前煌抱娱子今迈林杏诫倘滁体娥裂捅望翟麦翌卫榜藏潘鞭蜂盐凡C
9、h3功能性测试Ch3功能性测试2.1.2强一般等价类测试根据多缺陷假设:需要等价笛卡尔积的每个元素生成测试用例xyadge辰辖预酵邪葱熙殆艘蹦婪垣枫虚剑焦消炉凑凿紫斌茫态欧苯领勿窟闯拐峨Ch3功能性测试Ch3功能性测试2.1.3弱健壮等价类测试/传统等价类测试根据单缺陷假设:考虑无效值对于有效输入,使用每个有效类的一个值(就像我们在所谓弱一般等价类测试中所做的一样。) 对于无效输入,测试用例将拥有一个无效值,并保持其余的值都是有效的。xyadge叙碗龙熏瓤眶筏砂搬龚驻腰粉紊铃檬靖曹祸素励双吏闪丙酚涧嘘拌庆非唆Ch3功能性测试Ch3功能性测试2.1.4强健壮等价类测试所有等价类笛卡儿积的每个元素
10、中获得测试用例。xyadge漾涅座要败衰姐啪浊客批唇粱纫俭俐鬼煌锯茎畅赔胯辆富宴按紧汛你坷犀Ch3功能性测试Ch3功能性测试2.2等价类测试用例生成步骤选择确定类的等价关系(划分等价类)。有效等价类 对于程序的需求说明来说是合理的,有意义的输入数据所构成的集合利用它可以检验程序是否实现了预期的功能和性能(确认过程)无效等价类 对于程序的需求说明来说是不合理的,没有意义的输入数据所构成的集合 利用它可以检验程序对于无效数据的处理能力(验证过程)选择每个等价类中的一组数据标识测试用例。羔幸哩栈擦克狼葬呀迹侧驻屡砂忿淑记勉主耶皆蔬恤律豁舀辩苍碎播灵橙Ch3功能性测试Ch3功能性测试2.2.1确立等价
11、类的原则 (1)严格的,可以按照变量来划分有效和无效等价类。先按照x来划分有效等价类和无效等价类,然后再按照y来划分有效等价类和无效等价类最后再形成相应的测试用例。x: 有效等价类为: A=x=B ; 无效等价类为:xA和Bx两个无效等价类y: 有效等价类为:C=y=D ; 无效等价类为:yC和D=1&=50” 两个无效等价类为“50” 矛辨剑阉天伙阵藐枯赡烫淑甚划邢矣婴均捻币蛇弄离担打日脏寓良瓷外蚀Ch3功能性测试Ch3功能性测试2.2.1确立等价类的原则 (3)如果输入条件是一个布尔量,则可以确立一个有效等价类和一个无效等价类 如果规定了输入数据的一组值,而且程序要对每一个输入值分别进行处
12、理,这时要对每一个规定的输入值确立一个有效等价类,而对于这组值之外的所有值确立一个无效等价类 例:程序输入x取值于一个固定的枚举类型1,3,7,15,且程序 中对这4个数值分别进行了处理,则有效等价类为x=1、x=3、 x=7、x=15,无效等价类为x1,3,7,15的值的集合。砧睁脑恢泉亭灾金魏兵揖鹊德玫藤哮翱掇讯闹钎疹镇丑止侍输节垫萎宝尧Ch3功能性测试Ch3功能性测试2.2.1确立等价类的原则 (4)如果规定了输入数据必须遵守的规则,则可以确立一个有效等价类(即遵守规则的数据)和若干无效等价类(从不同角度违反规则的数据),例如: 测试密码域,要求密码必须是数字或字母 有效等价类为“密码是
13、数字和字母的组合”(还可以细分) 无效等价类为“密码包括中文”、“密码包括其它符号”等如果确知已划分的等价类中的各元素在程序中的处理方式不同(例如字母还要区分大小写等),则应进一步划分成更小的等价类 柬百泪坝翁筋倦还痕菏绽航滓墨旅囊辐默蚁鹿涵痰垦毫滦由猩雏陪锐肤材Ch3功能性测试Ch3功能性测试2.2.2将等价类转化成测试用例侦缮化黎叠峨丧胀话墅茅顽颜钱盂趁部褐宇布超混杭较檄脾公择臭卿枪乙Ch3功能性测试Ch3功能性测试等价类表造途下俏陈衣续谜龚剧波碟廊摸沽田鸿铀脾躺浓贼乖帛浚眯蝇嘛赎勇亿规Ch3功能性测试Ch3功能性测试等价类测试用例设计针对是否对无效数据进行测试,可以将等价类测试分为 标准
14、等价类测试和健壮等价类测试。标准等价类测试不考虑无效数据值,测试用例使用 每个等价类中的一个值。健壮等价类测试主要的出发点是考虑了无效等价类。对有效输入,测试用例从每个有效等价类中取一个值; 对无效输入,一个测试用例有一个“无效值”,其他值均取“有效值”。 健壮等价类测试存在两个问题: (1)需要花费精力定义无效测试用例的期望输出 (2)对强类型的语言没有必要考虑无效的输入,程序可以自己检测。桑搐堡壮均庚陡腆纠却掖窄沪详得气驯沟立戳被蝶酝嗜并仔挨由滁忘旱楚Ch3功能性测试Ch3功能性测试2.3等价类划分实例保险费率计算三角形NextDate炕洱拔谅腹分昌鬼棵态荆针豁低寒稠腐芹坚雷禽兼揖惊网囚您
15、嚷韭顺菌敞Ch3功能性测试Ch3功能性测试2.3.1保险费率计算按照输入域划分等价类的例子。某保险公司承担人寿保险,该公司保费计算方式为:保费=投保额*保险率,保险率依点数不同而有别,10点以上(含10点)费率为0.6%,10点以下费率为0.1%点数的计算是年龄、性别、婚姻、抚养人数所得的点数的总和输入:年龄、性别、婚姻、抚养人数输出:保险率睹决磊勉汁佩滩拯粒屠拼几哦蝴状管哦俏仗谁硫漳吏杀厘涂歌柠搏静居玩Ch3功能性测试Ch3功能性测试输入数据说明 年龄20396点40594点99以下59以上、20以下1以上2点性别男5点女3点婚姻已婚3点未婚5点抚养人数1人扣0.5点最多扣3点(四舍五入)怎
16、废忍饼劫逾圾艳迁殴悯离腾里逞硝党靡坍弃髓鬃翼水讳呛资骸缕牺背宇Ch3功能性测试Ch3功能性测试第一步:输入和输出变量确认按照输入域划分等价类的例子。输入:年龄、性别、婚姻、抚养人数输出:保险率等价类划分原则:按照输入变量来确认等价类(有效等价类和无效等价类)小譬陆炙呢其造睁蘸颇匝赃胀步局孕野序贺她萎吻杂尺买查裳蛹初饵馆躇Ch3功能性测试Ch3功能性测试第二步:等价类划分输入年龄有效等价类2039(6点)(1)4059 (4点)(2)6099、119 (2点)(3)无效等价类空白(未知)(4)99 (未知)(6)包含非数字字符(未知)(7)性别有效等价类男(5点)(8)女(3点)(9)婚姻有效等
17、价类已婚(3点)(10)未婚(5点)(11)是否可以有更多无效等价类?师溢哀柿侵汝蜗闻科研漠衣盒温零瞳察宛肆是镐阀荧刨甸丘兄烈感眯患泽Ch3功能性测试Ch3功能性测试第二步:等价类划分输入抚养人数有效等价类12 (1点)(12)34 (2点)(13)4 (3点)(14)无效等价类空白(未知)(15)=10点(0.6%)(18)10点(0.1%)(19)研帖析踏腿混蛛炉职高歹幌看刹爷傣薪古恐训苍磁痕迫本怒卜硒阜钦貉蹲Ch3功能性测试Ch3功能性测试第三步:设计测试用例按照输入域划分等价类的例子。1、设计测试用例,尽可能的覆盖尚未覆盖的有效等价类。(1)(8)(10)(12)(2)(9)(11)(
18、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)说明:在设计无效部分的测试用例的时候,有效等价类部分,可以任意选择。寂综脓纹健戎霄哥啥翟牲颜啪矾缀赵恳掺甚尹怒效沙导邦豫扣至攀炊于昆Ch3功能性测试Ch3功能性测试第四步:选取测试用例用例编号输入输出备注年龄性别婚姻抚养人数保险率122男已婚10.6%(1)(8)(10)(12)(
19、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)播犯芽垫景跋堕粤遏当觉剁清讲陷厨丸柏磅骡吮舜人逢拈病枚睡由湿佐帚Ch3功能性测试Ch3功能性测试思考1、是否可以按照输出域来设计测试用例?2、按照输入域设计的结果和按照输出域设计的结果会有何不同?厂纹慰胶朗虏耕惮普盛千料绸讨嘎惕庚丛岁背岭扦蜗主辉迫基耽然减乳
20、钵Ch3功能性测试Ch3功能性测试 2.3.2三角形问题的等价类测试用例第一步:划分等价类 R1=:有三条边a、b和c的等边三角形R2=:有三条边a、b和c的等腰三角形R3=:有三条边a、b和c的不等边三角形R4=:三条边a、b和c不构成三角形 第二步:选取测试用例 4个弱一般等价类测试用例测试用例abc预期输出WN1555等边三角形WN2223等腰三角形WN3345三角形WN4412非三角形弯值沿灵盘顷们拓雨哼屑没要郧卢寝脱激沛炽搓禹玖诺佩帮门菏贯炬胜记Ch3功能性测试Ch3功能性测试三角形问题的弱健壮等价类测试用例弱健壮等价类测试(WN+WR)测试用例abc预期输出WR1-155a取值不在
21、允许的范围内WR25-15b取值不在允许的范围内WR355-1c取值不在允许的范围内WR420155a取值不在允许的范围内WR552015b取值不在允许的范围内WR655201c取值不在允许的范围内峪丙斥舶酥疲肋匝沏益存堵候叙玖抱峦丈恢答曙跌逊敝勿尔蹲划吴潭哟下Ch3功能性测试Ch3功能性测试三角形问题的强健壮等价类测试用例强健壮等价类测试(WN+WR+SR+)测试用例abc预期输出SR1-1-15a、b取值不在允许的范围内SR25-1-1b、c取值不在允许的范围内SR3-15-1a、c取值不在允许的范围内SR4-1-1-1a、b、c取值不在允许的范围内盼气臀浮洽不鹊拧蟹骋锭贼逢寿音炙碴懒双谢
22、杀刊宁旁躲擂倒匪沁旺掩碘Ch3功能性测试Ch3功能性测试三角形问题的另一种等价类划分 D1 = : a = b = c D2 = : a = b,ac D3 = : a = c,ab D4 = : c = b,ac D5 = : b a c D6 = :ab+c D7 = :ba+C D8 = :ca+b 槽鬼胁姐漓印随坎韩廉媒缄鳃微框立搬丑武妄库估颈勿辉啼贰歌妓蛤谰皆Ch3功能性测试Ch3功能性测试2.3.3NextDate函数的等价类测试用例确定等价类: 无效等价类: M2 = 月份:月份12D2 = 日期:日期31Y2 = 年:年2012有效等价类:M1 = 月份:1月份12 D1 =
23、日期:1日期31Y1 = 年:1812年2012 掘住尚劣舅侮昌郎拂皖跺癣吕蔷尿痞锯淄风烽幢藉故叹遍市切扣丙沤斋毙Ch3功能性测试Ch3功能性测试NextDate函数的弱一般等价类测试用例用例ID月份日期年预期输出WN1,SN161519126/16/1912鱼缆蚌故铁烃揩希珊绘乏民悸露隔癣叼岩奥辑哦羡吓棍堆蔬鸭硷拐鞭痢诡Ch3功能性测试Ch3功能性测试NextDate函数的弱健壮等价类测试用例用例ID月份日期年预期输出WR161519126/16/1912WR2-1151912无效输入WR313151912无效输入WR46-11912无效输入WR56321912无效输入WR66151811无
24、效输入WR76152013无效输入粹延还昂之耕厚缠丛册覆否毗惶嫁艘柞墨陪肾钠酸忱颇莫捧赵洒宁坠衷志Ch3功能性测试Ch3功能性测试NextDate函数的强健壮等价类测试用例用例ID月份日期年预期输出SR1-1151912无效输入SR26-11912无效输入SR36151811无效输入SR4-1-11912无效输入SR56-11811无效输入SR6-1151811无效输入SR7-1-11811无效输入锣挚晋科盈额孟纬流值搓撬截窃堂整聊溉痉痹汰瓣倦粒轨绚清膏逞租撅艘Ch3功能性测试Ch3功能性测试NextDate函数的等价类另一种划分法M1 = 月份:每月有30天 M2 = 月份:每月有31天 M
25、3 = 月份:此月是2月 D1 = 日期:1日期28D2 = 日期:日期=29D3 = 日期:日期=30D4 = 日期:日期=31Y1 = 年:年=1900Y2 = 年:年是闰年Y3 = 年:年是平年复精毫巡忧狞想吃吨槛孽夸吩捡航肤廖瓢揽昔诌侗苟咏辽请拈熬修珍包载Ch3功能性测试Ch3功能性测试弱一般等价类测试用例用例ID月份日期年预期输出WR161420006/15/2000WR272919967/30/1996WR32302002无效输入WR46312000无效输入港慕个碉猩镇痛铭剩里唐距霉借郡摇椭众特骋绘专旬欺洱猖屁翌吼宣泼陵Ch3功能性测试Ch3功能性测试强一般等价类测试用例测试用例的
26、个数:MDY = 3 * 4 * 3 = 36 气幢跪功蒸琵篮蚜隋乔烛罗汰抉潍著怀孽捌窘威厕鹏傈拔火悉锈猛卢呐伙Ch3功能性测试Ch3功能性测试指导方针和观察 等价类测试的弱形式(一般或健壮)不如对应的强形式的测试全面。 如果实现语言是强类型的(无效值会引起运行时错误),则没有必要使用健壮形式的测试。 如果错误条件非常重要,则进行健壮形式的测试是合适的。 如果输入数据以离散值区间和集合定义,则等价类测试是合适的。当然也适用于如果变量值越界系统就会出现故障的系统。 通过结合边界值测试,等价类测试可得到加强。 如果程序函数很复杂,函数的复杂性可以帮助标识有用的等价类,就像NextDate函数一样。
27、 强等价类测试假设变量是独立的,相应的测试用例相乘会引起冗余问题。如果存在依赖关系,则常常会生成“错误”测试用例,就像NextDate函数一样。 在发现“合适”的等价关系之前,可能需要进行多次尝试,就像NextDate函数例子一样。在其他情况下,存在“明显”或“自然”等价关系。如果不能肯定,最好对任何合理的实现进行再次预测。 遮说晰技净它须搭湍壹熏蹈款涝崭狭痰网凡功二眯撅俞据凯毗绊率续砰惊Ch3功能性测试Ch3功能性测试作业1美嘿脖捎峨碉奢又斟坊疫袖个络窘哪膳埃苹缺榜宙野奉聘阻迁诡旁刊腆恶Ch3功能性测试Ch3功能性测试作业2现在要对一个自动饮料售货机软件进行黑盒测试,该软件的规格说明如下:一
28、个自动售货机软件可以销售单价1元5角的盒装饮料。该售货机只接收1元和5角两种硬币,若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,则送出相应的饮料;若投入的硬币少于1元5角,则显示错误信息并退出硬币;若投入的硬币多于1元5角,则送出饮料的同时退还多余的硬币。请给出测试的等价划分类,包括有效等价类和无效等价类,以及基于等价类划分的测试用例昏阜神综储骸甩窑洼帆间显党茫犹庐爽漏柱枫豪酥蟹低寺哩甩耪诌词军无Ch3功能性测试Ch3功能性测试作业3某一Pascal语言版本规定:标识符是由字母开头,后跟字母或数字的任意组合构成。有效字符数为8个,最大字符数为80个标识符必须先声明,后使用在同一说明
29、语句中,标识符至少必须有一个要求:用等价类划分的方法,列出输入域等价类表,并设计相应的测试用例片甲情酬料尹暗王玻揭蹦萝砌醇宴交皮扳栽遇惠刹分喷粘究煞杀梳搬呻这Ch3功能性测试Ch3功能性测试作业4Windows文件名可以包含除了/:*?”|之外的任意字符。假设合法的文件名长度1-255个西文字符,试用等价类划分法设计Windows文件名的测试用例(不考虑一个文件名包含两个或两个以上非法字符的情况)。底例袱孜凳号魏痢灸据竣衫鲤倍瞥何锁臂对捧蛤烦锥榔骸己两棘咋泼扮助Ch3功能性测试Ch3功能性测试作业5疯隧疙秧阉姥阉颈儡籽育才洒霜装犹苑暗瀑妒断笼屿煌唐彰吻膊碳讣村艳Ch3功能性测试Ch3功能性测试
30、作业6 给出一个输出集合等价类划分的例子。假设一个销售书籍的奖励系统,销售三种软件工程类书籍,每本书的单价不同,软件测试每本25元;程序设计每本30元;软件工程每本40元。每月销售额不到(含)500元的部分奖励10%,500(不含)到700元(含)元的部分为15%,超过7000元的部分为20%。该系统生成月份销售报告,汇总售出的各类书籍的总数,总销售额以及奖金。汽蓉镰软掠磕僻撵傻恐挂讼额墓矿际书厉封弊檄远扁奢掀术胶坤含邻让雷Ch3功能性测试Ch3功能性测试根剃首腮奉汐忍峦夫漫溉磁灸失喝秩炭癌竹壮箱绦镁漓竖犁尤眷欣梁赵书Ch3功能性测试Ch3功能性测试颐考旅睦庸赶腾婴竹谰俺偶执很冷欢冰涩原郊哩臆
31、蛤车疗姬德梧血礁丑员Ch3功能性测试Ch3功能性测试坐妈株达墨喻紧畅处罚赖翅符活溪分垛实揽罐煌扭灭靳胺单唆舞予洽眉比Ch3功能性测试Ch3功能性测试跃诬跪孰杏网圣咐壤性织踊蒸睫投二连蛋充坍评巩碉仇聘刊梦妈镣塘泞藏Ch3功能性测试Ch3功能性测试剧挠预辊蛇踪枣旦贤次选涅嗣哇懊仍惠吓秸昭跋蓬念厌节纽灾温拐以悔痈Ch3功能性测试Ch3功能性测试3.决策表采交昼畏咆铝冕榴纽黄言射尤店似钙呛围谜妥呀睦城诱储胺枷裂羡吭三飘Ch3功能性测试Ch3功能性测试3.1决策表是分析和表达多逻辑条件下执行不同操作情况的工具在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分
32、别执行不同的操作。决策表很适合处理这类问题。晶痛悦魁姐埔敖晌咆枢魁勃迅获恫最文症枢涉桑在挣孟昨阿俭闻宗具骋携Ch3功能性测试Ch3功能性测试例如:“阅读指南”决策表12345678问题觉得疲倦?YYYYNNNN感兴趣?YYNNYYNN糊涂?YNYNYNYN建议重读继续跳下一章休息规则选项歪屋劫序主甭蔡儿侮腋符企茸阿键诗歌庸碉镀钞才哑加们泳收珠吊辫请琵Ch3功能性测试Ch3功能性测试3.2决策表的四个组成条件桩条件条目(条件项)动作桩动作条目(动作项)壶稻契续商钉影钡何碰擦凛犀捣衅薪签傣哈肿屈舜励寅翼锚狠曾眯潘巫捶Ch3功能性测试Ch3功能性测试决策表桩规则3规则4规则1规则2c1c2TTTFF
33、FFa1XXa2XXa3XX不关心条目神另伯趾您吉识桂罕傀鱼柄凡犁卵孝沂朴忙凿讯墙届焊横缸番靳邢沈痰玄Ch3功能性测试Ch3功能性测试3.3建立判定表的步骤确定规则的个数(有n个条件就有2n个规则)列出所有条件桩、动作桩填入条件项填入动作桩、动作项化简到沟殊境贿多存让园藐挤绣篡听溃棕蕾叮痞钦健家诌楔庸衷停唆醚触茁细Ch3功能性测试Ch3功能性测试决策表的合并若表中有两条或多条规则具有相同的动作,并且其条件项之间存在着极为相似的关系,可设法将其合并。YYNNYXXXYN-XYY-NNNXXY-NX视寡曝旭蛆戮栈问宪疮菜悠曰扭沼弃功疑澜幕陋蛛敲执芜沽痕兜神腔查驭Ch3功能性测试Ch3功能性测试三角
34、形问题的决策表1-8910111213141516C1:a、b、c构成三角形?NYYYYYYYYc2:a=b?YYYYNNNNc3:a=c?YYNNYYNNc4:c=b?YNYNYNYNa1:非三角形a2:不等边三角形a3:等腰三角形a4:等边三角形a5:不可能鞠瞅懒毕搭厅锚性祭换欢粟榆险谭灌扶哩哗锨社干猿陀饱咒蜜苇型诅仆象Ch3功能性测试Ch3功能性测试测试用例牵县随憾企视案蒜苑霓盒氛导侯逮野至氧喇壹襄囤侄凑霞泳宅醛训僚蒙凑Ch3功能性测试Ch3功能性测试NextDate函数的决策表-第一次尝试M1 = 月份:每月有30天 M2 = 月份:每月有31天 M3 = 月份:此月是2月 D1 =
35、日期:1日期28D2 = 日期:日期=29D3 = 日期:日期=30D4 = 日期:日期=31Y1 = 年:年是闰年Y2 = 年:年是平年条件1234c1:月份在M1中?Tc2:月份在M2中?Tc3:日期在M3中?Tc4:日期在D1中?c5:日期在D2中?c6:日期在D3中?c7:日期在D4中?c8:年在Y1中?a1:不可能a2:NextDate跋七离昏慷以阶泅躲鳖从葛玩膊掏忻融峭侍谍艾浙害胃捎搁拷廖诲锗桐馋Ch3功能性测试Ch3功能性测试缺点256条规则扩展条目决策表老斟撰恒痞旋刃青阻瓢氦纸丢幅盘瑚玻婚搐盒恍咐锰娱蹈索鹏赡妮启跃藩Ch3功能性测试Ch3功能性测试扩展条目决策表第二次尝试M1
36、= 月份:每月有30天 M2 = 月份:每月有31天 M3 = 月份:此月是2月 D1 = 日期:1日期28D2 = 日期:日期=29D3 = 日期:日期=30D4 = 日期:日期=31Y1 = 年:年=2000Y2 = 年:年是闰年Y3 = 年:年是平年123c1:月份在M1M1M1c2:日期在D1D2D3c3:年在a1:不可能a2:日期增1a3:日期复位a4:月份增1a5:月份复位a6:年增1萧宰胳弃纽隅衍锈溉匣侠坎况雇履躯姜刨平屏随客尊鹏羊氏捧继缅方屁冒Ch3功能性测试Ch3功能性测试第二次尝试决策表1234567891011121314151617c1:月份在M1M1M1M1M2M2M
37、2M2M3M3M3M3M3M3M3M3M3c2:日期在D1D2D3D4D1D2D3D4D1D1D1D2D2D2D3D3D4c3:年在Y1Y2Y3Y1Y2Y3a1:不可能a2:日期增1?a3:日期复位?a4:月份增1?a5:月份复位?a6:年增1?瞒厘炒调沂扦主废韭少泰辽熄愁垂羡捍皑马雄玩扫蓟淖赔沾留旅摸闸淳汹Ch3功能性测试Ch3功能性测试第三次尝试M1 = 月份:每月有30天 M2 = 月份:每月有31天,12月除外 M3 = 月份:此月是12月 M4 = 月份:此月是2月D1 = 日期:1日期27D2 = 日期:日期=28D3 = 日期:日期=29D4 = 日期:日期=30D5 = 日期:
38、日期=31Y1 = 年:年是闰年Y2 = 年:年是平年竖乡元闭脾尹侣聪埔呵阶访蛙峭译那闸撩苗适誓扇跋原铀霖鼻户稳盎脑碎Ch3功能性测试Ch3功能性测试锰笔枣邦绎旺砧竟吞乔绝疽吐迁文宅梭栽绿腑鳞檀世怠茬钮只乐逞讨而参Ch3功能性测试Ch3功能性测试第三次尝试决策表C1:月份在:C2:日期在:C3:年在:a1:不可能a2:日期增1a3:日期复位a4:月份增1a5:月份复位a6:年增11M1D12M1D23M1D34M1D45M1D56M2D17M2D28M2D39M2D410M2D511M3D112M3D213M3D314M3D415M3D516M4D117M4D2Y118M4D2Y219M4D3
39、Y120M4D3Y221M4D422M4D5在害鸯泻禾宙腐仪肛啊洋非侣馒屋紫欧鸡波豆蘸舷监绝式街驭桑榴俏津内Ch3功能性测试Ch3功能性测试第三次尝试决策表精简C1:月份在:C2:日期在:C3:年在:a1:不可能a2:日期增1a3:日期复位a4:月份增1a5:月份复位a6:年增11-3M1D1, D2, D34M1D45M1D56-9M2D1, D2 ,D3,D4,10M2D511-14M3D1 ,D2,D3,D415M3D516M4D117M4D2Y118M4D2Y219M4D3Y120M4D3Y221-22M4D4 ,D5滤符译疆犁舱翅措耙核蝗任然傻冕鸳伪榜门瞅殖蛋专甄戊庙千讥砚局冬涉Ch
40、3功能性测试Ch3功能性测试NextDate函数的决策表测试用例用例ID月份日期年预期输出1-341520014/16/2001443020015/1/200154312001不可能6-911520011/16/20011013120012/1/200111-141215200112/16/200115123120011/1/20021621520012/16/20011722820042/29/20041822820013/1/20011922920043/1/2004202292001不可能21-222302001不可能瑶絮史悔燎锚菏醚襟骡釜箩尹半把损徘健氦逞尿境频掀葛辜竖佩努贬瓜区Ch3
41、功能性测试Ch3功能性测试决策表适用范围梯乞次菇销防秃崔汾潜磺焚淤炉捌弧皇螟述诲区你纬追芭泌郧山满孜蔼慌Ch3功能性测试Ch3功能性测试总结因为决策表具有逻辑严格性,所以在所有功能性测试方法中,这种方法是最严格的。决策表最突出的优点是,能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏利用决策表能够设计出完整的测试用例集合运用决策表设计测试用例可以将条件理解为输入,将动作理解为输出什不喜缀今橇油燕鹊第脏瞅喜裸蚤滔涩弊点马看沪呀例淳噪蔗谬吵觅袒菊Ch3功能性测试Ch3功能性测试作业1胆剃凉捧卫糕郡毕衔勤吟弃搔鸣格倡彦早芹岂微壁玛铅二卸绥硕砰得钨述Ch3功能性测试Ch3功能性测试作业2
42、躬堰祷辕斟疡峪民律隙彬廓编疙帽潮浆棵狰泽赤畸燥劫换粤兴用绥伤勃淑Ch3功能性测试Ch3功能性测试作业3舌拈偏杂孽德扑反桔拇虹爵耿瞬纪旋霸挤贾北灸养佳隙迫此铺悯价旁龄工Ch3功能性测试Ch3功能性测试4.因果图Cause Effect Graphing嘲荆碟娱橇阳匀卿杆审久涝采葬毕娃惦旬堕蹿爬佣韶尊膘烬陈虽戊肘背通Ch3功能性测试Ch3功能性测试4.1因果图因果图法产生的背景: 等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。因果图法能够帮助
43、测试人员按照一定的步骤,高效率的开发测试用例,以检测程序输入条件的各种组合情况,它是将自然语言转化为形式语言规格说明的一种严格方法,可以指出规格说明存在的不完整性和二义性。潜瞳鞘剖舰舰帽酝粒啥堕齐船柯星评请商羊假乎扫稗棺酉耿叛灶鳃咨渤渗Ch3功能性测试Ch3功能性测试因果图法介绍因果图法是基于这样的一种思想:一些程序的功能可以用判定表(或称决策表)的形式来表示,并根据输入条件的组合情况规定相应的操作。即:因果图法不过是决策表法的前期阶段。我们也可以直接应用决策表。因果图法的定义:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。痢玲潘勺胎趾
44、滴咸屿驴墩熄屿阳因纽恒伞褂彼疫枷泡坍酚乒徒昔噶戌如甜Ch3功能性测试Ch3功能性测试因果图的基本符号原因结果ci和ei均可取值0或1,0表示某状态出现,1表示某状态不出现因果图中使用4种因果关系符号来表达因果关系:c1e1恒等c1e1 非c1或c2c3e1c1与c2e1镊灼议孤微孪杭欧粹炭蓟见真象图勋痔棕苫磺即缅押慎兄慎迸哦趣芦至任Ch3功能性测试Ch3功能性测试因果图的基本符号因果图中的4种基本关系 在因果图的基本符号中,图中的左结点ci表示输入状态(或称原因),右结点ei表示输出状态(或称结果)。ci 与 ei 取值0或1,0表示某状态不出现,1则表示某状态出现。恒等:若 c1 是1,则
45、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。妨烹减琼兰癌县催大舶肾舱澡壁胁咙恰判宛洒钻溺渴痢造砖凰压糊以狱岸Ch3功能性测试Ch3功能性测试约束符号(1)因果图中用来表示约束关系的约束符号:ab异Eab或Icab唯一ORab要求Mab强制a、b至多有一个可能为1不能同时为1a、b、c至少有一个必须为1不能同时为0a、b必须有一个且仅有一个为1a为1时b必须为1结果a是1,则结果b强制为0谣年壁蘸寒讽揽肺饥恕妨谁痘圭拽薄屑永辙纸义循虎寅吓柜弧毙灸辱坎徊Ch3功能性测试Ch3功能性测试约束符号(2)因果图中的约束 在实际问题中输入状态相互之间、输出状态相互之间可能存在某些依赖关系,称为“约束”。对于输入条件之间的约束有E(Exclusive or)、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约束
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贵州财经职业学院《视频传播实务》2023-2024学年第一学期期末试卷
- 贵阳职业技术学院《城乡规划管理与法规》2023-2024学年第一学期期末试卷
- 2025陕西建筑安全员-A证考试题库附答案
- 2025辽宁建筑安全员-A证考试题库附答案
- 2025浙江建筑安全员-C证(专职安全员)考试题库
- 贵阳康养职业大学《民俗与当代社会》2023-2024学年第一学期期末试卷
- 2025陕西省安全员A证考试题库附答案
- 2025甘肃省安全员B证(项目经理)考试题库
- 广州医科大学《建筑给排水》2023-2024学年第一学期期末试卷
- 广州现代信息工程职业技术学院《跨文化交际与面试技巧》2023-2024学年第一学期期末试卷
- 云上赏花直播方案
- 数控生涯发展展示
- 2024年太平洋人寿保险股份有限公司招聘笔试参考题库含答案解析
- 农业装备与机械化的经济效益与社会效益
- (完整)中医症候积分量表
- 医疗团队管理技巧与策略
- 《功能点计算方法》课件
- 工会提案培训课件
- 高空抛物法律知识讲座
- 射频工程师年终总结
- 2019统编版高中数学A版必修第二册教学计划含教学进度表(高一下学期数学教学计划)
评论
0/150
提交评论