白盒测试、黑盒测试.ppt

上传人:s****8 文档编号:82806963 上传时间:2023-03-26 格式:PPT 页数:73 大小:2.59MB
返回 下载 相关 举报
白盒测试、黑盒测试.ppt_第1页
第1页 / 共73页
白盒测试、黑盒测试.ppt_第2页
第2页 / 共73页
点击查看更多>>
资源描述

《白盒测试、黑盒测试.ppt》由会员分享,可在线阅读,更多相关《白盒测试、黑盒测试.ppt(73页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、1白盒法白盒法l白盒测试测试用例一般采用逻辑覆盖法进白盒测试测试用例一般采用逻辑覆盖法进行设计。行设计。l语句覆盖判定覆盖条件覆盖判定条件覆盖条件组合覆盖弱强软件测试方法路径覆盖底毖裙威炳幅稠培务肃冯狐陋印来巳响化咖岁务逆迈纠丰漫苞咐鸡毖炬骑白盒测试、黑盒测试白盒测试、黑盒测试2 语句覆盖:选择足够的测试用例,使得程序中每个语句至少都能被执行一次。判定覆盖:执行足够的测试用例,使得程序中每个判定至少都获得一次“真”值和“假”值。条件覆盖:执行足够的测试用例,使得所有判定中的每个条件至少都获得一次“真”值和“假”值。白盒法常用的覆盖标准白盒法常用的覆盖标准软件测试方法奸逗排尖扶岳挥淖驼彦豌里曲芽

2、鞍坤会菱通须胯歇彬碴仆晤燥迟究俗琵刷白盒测试、黑盒测试白盒测试、黑盒测试3 判定/条件覆盖:执行足够的测试用例,使得判定中每个条件取到各种可能的值,并使每个判定取到各种可能的结果。条件组合覆盖:执行足够的例子,使得每个判定中条件的各种可能组合都至少出现一次。路径覆盖:路径覆盖是相当强的逻辑覆盖,它保证程序中每条可能的路径都至少执行一次。白盒法常用的覆盖标准白盒法常用的覆盖标准软件测试方法尿操挫艳亭浸泳箱应卧孔邓穷角慷骨畴遣兴绥色豺茅踏披讼腑洒唾坠律阂白盒测试、黑盒测试白盒测试、黑盒测试4白盒法步骤:白盒法步骤:1)选择逻辑覆盖标准。2)按照覆盖标准列出所有情况。3)选择确定测试用例。4)验证分

3、析运行结果与预期结果。嚣元腾允竣曰墓中唇疑喷幅多麓缕怀以苍汾鉴卜闯噶捞上栋祁驻嘻栅垛坐白盒测试、黑盒测试白盒测试、黑盒测试5白盒法举例白盒法举例lProcedure(VAR A,B,X:REAL););l BEGINl IF(A1)AND(B=0)l THEN X:=X/A;l IF(A=2)OR (X1)l THEN X:=X+1l END;A1ANDB=0X:=X/AA=2OR X1X:=X+1YNYN弯聋非较佐烤升皖积汽宫桑皮洗嘶厦弓滦允憾哆奋吝胯供伪丹挖称刊全锈白盒测试、黑盒测试白盒测试、黑盒测试61 1、语句覆盖、语句覆盖l使得程序中每个语句至使得程序中每个语句至少都能被执行一次。少

4、都能被执行一次。A1ANDB=0X:=X/AA=2OR X1X:=X+1abcde满足语句覆盖的情况:执行路径:sacbed选择用例:(2,0,4),(2,0,3)用例格式:输入(A,B,X),输出(A,B,X)YNYN开始结束s盯惭哦燥汤现铡酋桑重馁勾筐姥爆圈椅律润耿拂码贡狮邢呢档墩像脆星县白盒测试、黑盒测试白盒测试、黑盒测试72 2、判定覆盖、判定覆盖l使得程序中每个判定至使得程序中每个判定至少为少为TRUE和和FALSE各各一次。一次。覆盖情况:应执行路径sabd sacbed 或:sacbd sabed选择用例(其一):(2,0,4),(2,0,3)sacbed (1,1,1),(1,

5、1,1)sabd (2,1,1),(2,1,2)sabed (3,0,3),(3,1,1)sacbdA1ANDB=0X:=X/AA=2OR X1X:=X+1abcdeYNYN开始结束s体烫女昏消蕾瞪值妨嗽娶暂槛涉握搁凋惭麓培风斜献懒增奶谈走效囤谜椎白盒测试、黑盒测试白盒测试、黑盒测试83 3、条件覆盖、条件覆盖使得判定中的每个条件至少都获得一次“真”值和“假”值。应满足以下覆盖情况:判定一:A1,A1,B=0,B0判定二:A=2,A2,X1,X1选择用例:(2,0,4),(2,0,3)(1,1,1),(1,1,1)2A1A20B=04X11A1A=21B01X1A1ANDB=0X:=X/AA=

6、2OR X1X:=X+1abcdeYNYN开始结束s屋禄臼吸孝今告彦慕疡茬搀用唐兵份沃怜喘咨兑抒原猫干闯坍丁秦傀吐阵白盒测试、黑盒测试白盒测试、黑盒测试94 4、判定、判定/条件覆盖条件覆盖l同时满足判定覆同时满足判定覆盖和盖和l条件覆盖。条件覆盖。应满足以下覆盖情况:条件:A1,A1,B=0,B0 A=2,A2,X1,X1 应执行路径sacbed sabd选择用例:(2,0,4),(2,0,3)(sacbed)(1,1,1),(1,1,1)(sabd)A1ANDB=0X:=X/AA=2OR X1X:=X+1abcdeYNYN开始结束s雁摧尖饶寄桃陈昼盂汾旋在可蒲威屉汝页憋我绣恿凛远容船肪柴舷

7、刽传删白盒测试、黑盒测试白盒测试、黑盒测试105 5、条件组合覆盖、条件组合覆盖l使得每个判定中条件的各种使得每个判定中条件的各种“真真”“假假”可能组合都至可能组合都至少出现一次少出现一次A1X:=X/AA=2X:=X+1abcdeB=0X1YNYNYNYN编译系统下的执行情况:部分路径未被执行。满足以下覆盖情况:A1,B=0 A1,B0 A1,B=0 A1,B0 A=2,X1 A=2,X1 A2,X1 A2,X1选择用例:(2,0,4),(2,0,3)(2,1,1),(2,1,2)(1,0,3),(1,0,4)(1,1,1),(1,1,1)c结束 述站瞄庭肄些匙剁睦营迂燃廷烙求棱持室藤婉驭

8、貉柠蔚较娟赣璃惠翘境曼白盒测试、黑盒测试白盒测试、黑盒测试116 6、路径覆盖法、路径覆盖法测试用例通过路径ABX111sabd112sabed301sacbd204sacbedA1ANDB=0X:=X/AA=2OR X1X:=X+1abcdeYNYN开始结束s每条可能的路径都至少执行一次韩紫暂摈扦凤姜翔撼釜嫩迷蒂龚盎娩燃浩侄坚率繁举筒翼赴琢萝伤拷利越白盒测试、黑盒测试白盒测试、黑盒测试12例题:三角形问题l输入三整数,判断是否构成三角形,如输入三整数,判断是否构成三角形,如构成三角形,则输出三条边的值,否则构成三角形,则输出三条边的值,否则输出输出“不能构成三角形不能构成三角形”。l l 要

9、求:要求:1、用程序流程图表示该问题的、用程序流程图表示该问题的算法;算法;2、设计路径覆盖的测试用例。、设计路径覆盖的测试用例。盘攻雅希友骚两吩谣赋晨头眼窝癣幌鹏婶锯酵氨惶膛咐猴谅豌傅妄傅然夫白盒测试、黑盒测试白盒测试、黑盒测试13解法1:l覆盖路径:覆盖路径:l 1l 2路路径径测试用例测试用例(A A,B B,C C)结果结果1 1A=3,B=4,C=A=3,B=4,C=5 5A=3,B=4,C=5A=3,B=4,C=52 2A=5,B=8,C=A=5,B=8,C=2 2不能构成三角形不能构成三角形巩旁式繁绥扶焙氖郎骸区物嗜赌铆焰着怪疫竖使数木短麻喜氨唤库痈惦酥白盒测试、黑盒测试白盒测试

10、、黑盒测试14解法2:l 覆盖路径:覆盖路径:测试用例测试用例l1 (3,4,5)l2 (2,2,5)l3 (2,5,2)l4 (5,2,2)允哲柄晴尉骄鸿悸光糟竭天带钒先序篇敞坑裂伐棱妖臂恳笆育狗态莫紊至白盒测试、黑盒测试白盒测试、黑盒测试15解法2:路径覆盖法测试用例设计路径路径测试用例(测试用例(A A,B B,C C)结果结果1 1A=3,B=4,C=5A=3,B=4,C=5A=3,B=4,C=5A=3,B=4,C=52 2A=2,B=2,C=5A=2,B=2,C=5不能构成三角形不能构成三角形3 3A=2,B=5,C=2A=2,B=5,C=2不能构成三角形不能构成三角形4 4A=5,

11、B=2,C=2A=5,B=2,C=2不能构成三角形不能构成三角形奈桶朔帚号幕梗之釉瞎缆渍茵竞笨午钵仿跪债平断满走得傅摄寨茂硷鱼竖白盒测试、黑盒测试白盒测试、黑盒测试16思考l解法解法1与解法与解法2有何不同?哪一种设计得有何不同?哪一种设计得更合理?更合理?砷副掩裕容态肺戴艳催从疵担药篇厚啥意晚乙虏取绊帧迸锥恰血署鳖雾滦白盒测试、黑盒测试白盒测试、黑盒测试17基本路径测试19101124578361,画出流程图狂名缮罚县辐摘究别脖储痕跨濒韦无酞券舰沮耕笼婿墩娩析渭磕邱企考鸿白盒测试、黑盒测试白盒测试、黑盒测试18基本路径测试 12,387694,510112,简化流程图性割么驻率之苹形峭骏厚由

12、潭铺料个提豆死不替辆礁薪报圾源名书垂捎驱白盒测试、黑盒测试白盒测试、黑盒测试19 V(G)=区域数量(由节点、连线包围的区域,包括图形外部区域)V(G)=连线数量-节点数量+2 V(G)=简单可预测节点数量+1环路复杂度(Cyclomatic complexity):代码逻辑复杂度的 度量。用V(G)表示。通过V(G)确定基本路径数。基本路径测试 3,计算环路复杂度功留凑细阔揭乐刺拦缆坊靶烦洒胳刹堤澈续肺护碾尹浓兽涯炊销摈索镇壁白盒测试、黑盒测试白盒测试、黑盒测试20V(G)=412,378694,51011Region 1Region 2Region 3Region 4基本路径测试 庐窥蔑上

13、躇帛蔚傻梢褐止出谁刽构派蚌煎秦秋奥槐盾奉晃喝韧实餐宦辱喉白盒测试、黑盒测试白盒测试、黑盒测试21基本路径集合:由独立路径构成的集合 由基本路劲集合导出的测试用例,保证被测程序的每条可执行语句至少被执行一次。基本集合不一定唯一基本路径测试 3,确定基本路径集合垒叼增搔涨曝瞩庭掌如撰杏邯诗挤垢次窝美漳训贸驭喊头来缎谢掩庆挂外白盒测试、黑盒测试白盒测试、黑盒测试22 Path1:1-2-3-6-7-9-10-1-11示例:基本路径测试用例 Path2:1-2-3-6-8-9-10-1-11 Path3:1-2-3-4-5-10-1-11Path4:1-111910112458736还有其它路径集合吗

14、?肪猛刀期碌躁邵沙严卡绚迟饰梭同悼码百崎毙孰网扦蚀啄昼颠耶铬熊裴伊白盒测试、黑盒测试白盒测试、黑盒测试23基本路径测试:练习AECDB Path1:A-C-E Path2:A-B-C-E Path3:A-B-C-D-EV(G)=?还有其它路径集合吗?3另外两组路径集合?匙拣牵颧买坤及败盐恿杜鹅泽苦制坐漳尧天鳃萧换侯靴硬膝弦丰姥凿声触白盒测试、黑盒测试白盒测试、黑盒测试24等价分类法边值分析法错误推测法因果图法不考虑程序的内部结构与特性,只根据程序功能或程序的外部特性设计测试用例。黑盒法黑盒法判定表法由戴箭裕愈苹初弄崩祥萨非赴却郁硷畏匡迢亡婚娥拄茄诸私独聋光摊库谍白盒测试、黑盒测试白盒测试、黑盒

15、测试251 1、等价分类法、等价分类法l基本思想:根据程序的基本思想:根据程序的I/O特性,将程序特性,将程序的定义域划分为有限个等价区段的定义域划分为有限个等价区段“等等价类价类”,从等价类中选择出的用例,具,从等价类中选择出的用例,具有有“代表性代表性”。等价类分为:有效等价类 对于程序的规格说明是合理的、有意义的输入数据构成的集合。无效等价类 对于程序的规格说明,是不合理的,是没有意义的输入数据构成的集合。慑鸟你粳闰蔑瘟辆譬功浮适仙牵纷咆炔阜垮肮抡思掩肤呵羌俩陷钵波绰眨白盒测试、黑盒测试白盒测试、黑盒测试26等价分类法步骤显然,关键是如何划分等价类 应按照输入条件(如输入值的范围,值的个

16、数,值的集合,输入条件必须如何)划分为有效等价类和无效等价类。例如:每个学生可选修1-3门课程 可以划分一个有效等价类:选修1-3门课程。可以划分两个无效等价类:未选修课,选修课超过3门。又如:标识符的第一个字符必须是字母。可以划分为一个有效等价类:第一个字符是字母。可以划分一个无效等价类:第一个字符不是字母。A、为每个等价类编号;B、使一个测试用例尽可能覆盖多个有效等价类C、特别要注意的是:一个测试用例只能覆盖一个无效等价类。划分划分等价类等价类选择测试用例仅缸荡震除容寄缺广坞椎狄恐方束氮蛇狰扣违骆柑铆结卖仪黔鲍吾纷避动白盒测试、黑盒测试白盒测试、黑盒测试272 2、边值分析法、边值分析法l

17、 基本思想:基本思想:选择等价类的边缘值作为测试选择等价类的边缘值作为测试用例,让每个等价类的边界都得到测试,用例,让每个等价类的边界都得到测试,选择测试用例既考虑输入亦考虑输出。选择测试用例既考虑输入亦考虑输出。分析步骤:A、先划分等价类。B、选择测试用例,测试等价类边界。边界选择原则:A、按照输入值范围的边界。B、按照输入/输出值个数的边界。C、输出值域的边界。D、输入/输出有序集的边界。蜒拜肋馅咒脊班补瓜殃虫南娠朵帘梆痞赛瘁红捶麦嘘唱慎接掀唱把柏魔蛾白盒测试、黑盒测试白盒测试、黑盒测试28 A、按照输入值范围的边界。例如:输入值的范围是-1.0至1.0,则可选择用例 1.0、1.0、-1

18、.001、1.001。B、按照输入/输出值个数的边界。例如:输入文件可有1-255个记录,则 设计用例:文件的记录数为 0个、1个、255个、256个。C、输出值域的边界。例如:检索文献摘要,最多4篇。设计用例:可检索0篇、1篇、4篇,和5篇(错误)。D、输入/输出有序集(如顺序文件、线性表)的边界。应选择第一个元素和最后一个元素。边值分析法举例宋它波翟工孙卉笋艇骋盐北紫仲肃护册防超痹想肩谭衙询咽宗盏裂仔从艺白盒测试、黑盒测试白盒测试、黑盒测试29等价类划分法举例等价分类法步骤程序功能说明书指出,某程序的输入条件为:每个学生可以选修1至3门课程,试用黑盒法设计测试用例。(1)按等价分类法设计测

19、试用例(要求列出设计过程)(2)按边缘值分析法设计测试用例。洼呜铝污耙亭都洛速我佯鄙望灾笛粮澡哀梅韵康浪增杯补蜒瘟王抢椅脸眯白盒测试、黑盒测试白盒测试、黑盒测试30黑盒测试举例等价分类法步骤答:等价类法(1)列出等价类表,设输入选修课数目为X:输输入条件入条件有效等价有效等价类类无效等价无效等价类类输输入入选选修修课课数目是数目是否合理否合理(1)1=X3(3)X1(2)设计测试用例:测试用例1:输入X=2,覆盖等价类(1)测试用例2:输入X=5,覆盖等价类(2)测试用例3:输入X=0,覆盖等价类(3)边界值法:X=0,X=1,X=3,X=4诚辞慌核撕第霖念蚤尿树米鲍卯可辈迢厩休亦捌严斧隆肖凄

20、塑寻耙堪元哺白盒测试、黑盒测试白盒测试、黑盒测试31例:某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。如何用等价类划分法设计测试用例,来测试程序的日期检查功能?用等价类划分法设计测试用例跟友公盎燥液除诀释嚼夷抹渤亢横熙甲焊跟毋凹勿现菠短纳湘筐另粒嚏岸白盒测试、黑盒测试白盒测试、黑盒测试32第一步:等价类划分输入条件有效等价类无效等价类报表日期的类型及长度6位数字字符(1)有非数字字符 (4)少于6个数字字符(5

21、)多于6个数字字符(6)年份范围在20032008之间(2)小于2003(7)大于2008(8)月份范围在112之间(3)小于1 (9)大于12(10)“报表日期”输入条件的等价类表产盅态题疼贾冗夹绰挫独底啡衅溺坠灰晤日激雾摊李龟镍月纱插心郊冀符白盒测试、黑盒测试白盒测试、黑盒测试33第二步:为有效等价类设计测试用例对表中编号为1,2,3的3个有效等价类用一个测试用例覆盖:测试数据测试数据覆盖范围覆盖范围期望结果期望结果200306等价类等价类(1)(2)(3)输入有效输入有效(1)6位数字字符(2)年在20032008之间(3)月在112之间嗓哗油又抱绷赛堵罚又演骚陇胺工趟设呐暖婴绷颊跺答更

22、醇累逮慷神罗健白盒测试、黑盒测试白盒测试、黑盒测试34第三步:为每一个无效等价类至少设计一个测试用例测试数据测试数据覆盖范围覆盖范围期望结果期望结果003MAY等价类等价类(4)输入无效输入无效20035等价类等价类(5)输入无效输入无效2003005等价类等价类(6)输入无效输入无效200105等价类等价类(7)输入无效输入无效200905等价类等价类(8)输入无效输入无效200300等价类等价类(9)输入无效输入无效200313等价类等价类(10)输入无效输入无效不能出现相同不能出现相同的测试用例的测试用例本例的10个等价类至少需要8个测试用例截恬麻肖雕畔绩藻辕肮丈薄捎准膜婆熬钢肮渴掸对驰

23、示锦站扫谗陪各涎莫白盒测试、黑盒测试白盒测试、黑盒测试35习题l某城市电话号码由三部分组成,分别是:某城市电话号码由三部分组成,分别是:l地区码地区码 空白或三位数字;空白或三位数字;l前前 缀缀 非非0且非且非1开头的开头的三位数字;三位数字;l后后 缀缀 4位数字。位数字。l 假定被测程序能接受一切符合上述假定被测程序能接受一切符合上述规定的电话号码,规定的电话号码,拒绝所有不符合规定拒绝所有不符合规定的电话号码。要求:的电话号码。要求:l(1)请选择适当的黑盒测试方法,写出)请选择适当的黑盒测试方法,写出选择该方法的原因,并使用该方法的步选择该方法的原因,并使用该方法的步骤,给出测试用例

24、表。骤,给出测试用例表。l(2)如果所生成的测试用例不够全面,)如果所生成的测试用例不够全面,请考虑用别的测试方法生成一些补充的请考虑用别的测试方法生成一些补充的测试用例。测试用例。化芒依踢巫打合裕亦棕锤硒辜凹餐受僻壶缔窿泛匹执丧喜勃捧抓恐巫忌然白盒测试、黑盒测试白盒测试、黑盒测试36多于3位数字少于3位数字有非数字字符 空白3位数字地区码编号无效等价类编号有效等价类输入条件前缀200999有非数字字符起始位为0起始位为1少于3位数字多于3位数字后缀4位数字有非数字字符少于4位数字多于4位数字341256789101112131415等价类划分法酝即哈拥过溜算证牲捏琳尺渤耪玉淑屎迪邮想伙以掳踞

25、儒樟藻衣哭单吕脚白盒测试、黑盒测试白盒测试、黑盒测试37测试用例编号输入数据预期输出地区码前缀后缀1空白2344567接受(有效)21238059876接受(有效)320A2344567拒绝(无效)4332345678拒绝(无效)512342344567拒绝(无效)61232B31234拒绝(无效)71230131234拒绝(无效)81231231234拒绝(无效)9123231234拒绝(无效)1012323451234拒绝(无效)111232341B34拒绝(无效)1212323434拒绝(无效)1312323423345拒绝(无效)覆盖等价类1,3,42,3,45678910111213

26、1415坚度翘荡躲秦擞个佯织钥样篱捶肩靳耐归佐串清反岛署炼纲勘慢叶组仅匀白盒测试、黑盒测试白盒测试、黑盒测试38习题:三角形问题l一个程序输入三个数一个程序输入三个数a、b、c,分别作为,分别作为三角形的三条边,现通过程序判断由三三角形的三条边,现通过程序判断由三条边构成的三角形的类型为等边三角形、条边构成的三角形的类型为等边三角形、等腰三角形、一般三角形(特殊的还有等腰三角形、一般三角形(特殊的还有直角三角形),以及是否构成三角形。直角三角形),以及是否构成三角形。l问题:设三角形问题:设三角形3条边分别为条边分别为a、b、c。试用等价分类法设计测试用例,写出设试用等价分类法设计测试用例,写

27、出设计过程。计过程。据车际怎挽浅盾席春熄沛评案蚤战相戌严肥拧冀易枪训琉台搭榆虫甫沫质白盒测试、黑盒测试白盒测试、黑盒测试39 在多数情况下,是从输入域划分等价类的,但并非不能从被测程序的输出域反过来定义等价类,事实上,这对于三角形问题却是最简单的划分方法。在三角形问题中,有四种可能的输出:等边三角形、等腰三角形、一般三角形和非三角形。利用这些信息能够确定下列输出(值域)等价类。R1=:边为a,b,c的等边三角形 R2=:边为a,b,c的等腰三角形 R3=:边为a,b,c的一般三角形 R4=:边为a,b,c不能组成三角形 分析:三角形问题磅酒辖洲完畏育顽棱姜卿掐掖浪雇帽救氢邮连鹰娇草为咨暑像壹侥

28、淖友拦白盒测试、黑盒测试白盒测试、黑盒测试40输入条件输入条件有效等价类有效等价类无效等价类无效等价类是否构成三角形是否构成三角形(A0A0)&(1 1)(B0B0)&(C0C0)&(A+BCA+BC)&(B+CAB+CA)&(A+CBA+CB)&(A0A0),),(6 6)(B0B0),),(7 7)(C0C0),),(8 8)(A+BCA+BC),),(9 9)(B+CAB+CA),),(1010)(A+CBA+CB),),(1111)是否等腰三角形是否等腰三角形(A=BA=B),),(2 2)(B=CB=C),),(3 3)(C=AC=A),),(4 4)(ABAB)&(BCBC)&(C

29、CA A)(1212)是否等边三角形是否等边三角形(A=BA=B)&(B=CB=C)&(C=AC=A)(5 5)(ABAB),),(1313)(BCBC),),(1414)(CACA),),(1515)解:输入条件等价类划分蛔铀捆尹憾赣痉远陆玛羞肯萍拘择姑嫂蔽谓贴轻普删元录醋曹淋放荧肆睬白盒测试、黑盒测试白盒测试、黑盒测试41序号序号【A A,B B,C C】覆盖等价类覆盖等价类输出输出1 1【3 3,4 4,5 5】(1 1)一般三角形一般三角形2 2【0 0,1 1,2 2】(6 6)不能构成三角不能构成三角形形3 3【1 1,0 0,2 2】(7 7)4 4【1 1,2 2,0 0】(8

30、 8)5 5【1 1,2 2,3 3】(9 9)6 6【3 3,1 1,2 2】(1010)7 7【1 1,3 3,2 2】(1111)8 8【3 3,3 3,4 4】(1 1),(),(2 2),(),(5 5)等腰三角形等腰三角形9 9【4 4,3 3,3 3】(1 1),(),(3 3),(),(5 5)1010【3 3,4 4,3 3】(1 1),(),(4 4),(),(5 5)1111【7 7,8 8,9 9】(1 1),(),(1212)非等腰三角形非等腰三角形1212【3 3,3 3,3 3】(1 1),(),(5 5)是等边三角形是等边三角形1313【7 7,8 8,8 8】

31、(1 1),(),(1313)非等边三角形非等边三角形1414【8 8,7 7,8 8】(1 1),(),(1414)1515【8 8,8 8,7 7】(1 1),(),(1515)榜曰干炉妊樊达压靖臂洼件势济镭垢僧齐寇樱宣仔良穆袍褪忌寺坯软氮廷白盒测试、黑盒测试白盒测试、黑盒测试42l 三角形问题,加入条件三角形问题,加入条件a、b、c在在1,100之间。之间。l 输入三个数输入三个数a、b、c,分别作为三角形,分别作为三角形的三条边,现通过程序判断由三条边构成的的三条边,现通过程序判断由三条边构成的三角形的类型为等边三角形、等腰三角形、三角形的类型为等边三角形、等腰三角形、一般三角形(特殊

32、的还有直角三角形),以一般三角形(特殊的还有直角三角形),以及构不成三角形。及构不成三角形。l 现在要求输入三个整数现在要求输入三个整数a、b、c,必须,必须满足以下条件:满足以下条件:l 条件条件1 1a100 条件条件4 ab+cl 条件条件2 1b100 条件条件5 ba+c l 条件条件3 1c100 条件条件6 ca+b 习题:题目:结合所学的黑盒测试用例设计方法,设计出合理的测试用例。要求列出设计过程。如果所生成的测试用例不够全面,请考虑用别的测试方法生成一些补充的测试用例。基狞害益荆需书琶御央央沾鲁刮皑渝果盒显澄巍澈慎碎抗詹葫段准魔心碳白盒测试、黑盒测试白盒测试、黑盒测试43等价

33、类划分:输入条件有效等价类编号构成等边三角形a、b、c在在1到到100之间之间3边相等边相等1构成等腰三角形a、b、c在在1到到100之间之间两边之和大于第三边两边之和大于第三边两条边相等两条边相等2构成一般三角形a、b、c在在1到到100之间之间两边之和大于第三边两边之和大于第三边3不能组成三角形a、b、c在在1到到100之间之间存在两边之和小于第三边存在两边之和小于第三边4掸赔膜橇伊别锑怯耐寸躲禄祥耐薄逝浑翟傀毫俗槛钥慰妄评稽瞪裙枣墨捡白盒测试、黑盒测试白盒测试、黑盒测试44测试用例测试用例编号编号abc预期输出预期输出 1101010等边三角形等边三角形 210105等腰三角形等腰三角形

34、 3345一般三角形一般三角形 4412非三角形非三角形等价类测试用例与上题分析有何不同呢?溯气牛堆歌持坑就俺庭晾淳输宅骋兄禾构物镶靴笛又抱由涂竞览鸥喉常玲白盒测试、黑盒测试白盒测试、黑盒测试45测试用例测试用例abc预期输出预期输出 5055a值超出输入值定义域值超出输入值定义域 6505b值超出输入值定义域值超出输入值定义域 7550c值超出输入值定义域值超出输入值定义域 810155a值超出输入值定义域值超出输入值定义域 951015b值超出输入值定义域值超出输入值定义域 1055101c值超出输入值定义域值超出输入值定义域边界值法继续设计无效等价类测试用例:还可以设计哪些测试用例呢?招

35、击猾贪昆概纲括黍罐闲羹蝉绦讫褥仁婆含侮陶跃并爹殉档详邮患移看热白盒测试、黑盒测试白盒测试、黑盒测试46测试用例测试用例abc预期输出预期输出 11*55a值是非法字符值是非法字符 125t5b值是非法字符值是非法字符 1355%c值是非法字符值是非法字符继续设计无效等价类测试用例:输入非法字符:寥舞挨性程辗酋栅侮誓哑帮骗滁耗啃窒榆姑造孔悼演遗斤荣哦扦励隔疹讳白盒测试、黑盒测试白盒测试、黑盒测试47决策表l在一些数据处理问题当中,某些操作的实在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的不同逻辑条件

36、的组合值,分别执行不同的操作。操作。l决策表(也称判定表)决策表(也称判定表),最适合描述在多逻最适合描述在多逻辑条件取值的组合所构成的复杂情况下,辑条件取值的组合所构成的复杂情况下,分别执行哪些不同的动作。分别执行哪些不同的动作。决策表实例踩花熬掀殷赘横昨烩扇坞宙燥妇钉艺磺喝鹃荆钡瓦箍五栈雀敷趾掠恫惩诡白盒测试、黑盒测试白盒测试、黑盒测试49决策表的组成l决策表通常由以下决策表通常由以下4部分组成:部分组成:l条件桩条件桩左上部分,列出各种可能的单个条左上部分,列出各种可能的单个条件件l动作桩动作桩左下部分,列出可能采取的单个动左下部分,列出可能采取的单个动作作l条件项条件项右上部分,针对各

37、种条件给出多组右上部分,针对各种条件给出多组条件取值的组合条件取值的组合l动作项动作项右下部分,指出在条件项的各组取右下部分,指出在条件项的各组取值情况下应采取的动作值情况下应采取的动作 条件桩条件桩动作桩动作桩 条件项条件项 动作项动作项规规则则将任何一个条件组合的特定取值及相应要执行的动作称为一条规则。在决策表中贯穿条件项和动作项的一列就是一条规则。孰飘殊函俘悼髓樱雾膝怖论姆完鸟危戈珍舀睦见垃抚叹誓孰责怖进惹滞衫白盒测试、黑盒测试白盒测试、黑盒测试50决策表分类l有限条目决策表有限条目决策表l 所有条件都是二元条件的决策表。所有条件都是二元条件的决策表。l扩展条目决策表扩展条目决策表l 若

38、条件可以有多个值,则对应的决策若条件可以有多个值,则对应的决策表称扩展条目决策表。表称扩展条目决策表。釜戴巡夺妓瞳绽朗徘喘伏疵藤均漏撅鸡垣蛛孟庚锰贷俊挪又拘斗卒付械勾白盒测试、黑盒测试白盒测试、黑盒测试51决策表的生成l构造决策表的构造决策表的5个步骤:个步骤:l(1)确定规则的个数。确定规则的个数。l有有n个条件的决策表有个条件的决策表有2n个规则(每个条件个规则(每个条件取真、假值)。取真、假值)。l(2)列出所有的条件桩和动作桩。列出所有的条件桩和动作桩。l(3)填入条件项。填入条件项。l(4)填入动作项,得到初始决策表。填入动作项,得到初始决策表。l(5)简化决策表,合并相似规则。简化

39、决策表,合并相似规则。l若表中有两条以上规则具有相同的动作,并若表中有两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可且在条件项之间存在极为相似的关系,便可以合并。以合并。l合并后的条件项用符号合并后的条件项用符号“-”表示,说明执表示,说明执行的动作与该条件的取值无关,称为无关条行的动作与该条件的取值无关,称为无关条件。件。三角形问题的决策表初向粱缅在源幂虹该篮胳蚂赃闯枪恕突看兑欠水社蛆温锰笔宣缀笼骤痘颠白盒测试、黑盒测试白盒测试、黑盒测试53决策表应用l例题:例题:NextDate函数的决策表测试用例设函数的决策表测试用例设计计l NextDate函数要求函数的输出是输

40、入日函数要求函数的输出是输入日期后一天的日期。期后一天的日期。l 例如:若输入为例如:若输入为2011年年3月月7日,则函数日,则函数输出应为输出应为2011年年3月月8日。日。l 问题:对上述函数采用判定表方法设计测问题:对上述函数采用判定表方法设计测试用例。试用例。潮脖匝昧斯后侵柯枝雷粥玄片阻渗锻横诺寅懈难炭握喘徽返孜扒涧汝裴嚏白盒测试、黑盒测试白盒测试、黑盒测试54决策表应用l问题分析:问题分析:NextDate函数的三个变量之间函数的三个变量之间在输入定义域中存在一定的逻辑依赖关系,在输入定义域中存在一定的逻辑依赖关系,由于等价类划分和边界值分析测试都假设了由于等价类划分和边界值分析测

41、试都假设了变量是独立的,如果采用上述两种方法设计变量是独立的,如果采用上述两种方法设计测试用例,那么这些依赖关系在机械的选取测试用例,那么这些依赖关系在机械的选取输入值时可能会丢失。而采用决策表法则可输入值时可能会丢失。而采用决策表法则可以通过使用以通过使用“不可能动作不可能动作”的概念表示条件的概念表示条件的不可能组合,来强调这种依赖关系。的不可能组合,来强调这种依赖关系。l说明:当决策表规模(指规则的数目,说明:当决策表规模(指规则的数目,n个个条件的决策表有条件的决策表有2n个规则)较大时,可以个规则)较大时,可以通过扩展条目决策表(条件使用等价类)、通过扩展条目决策表(条件使用等价类)

42、、代数简化表、将大表代数简化表、将大表“分解分解”为小表等方法。为小表等方法。实例分析抽弱卑芒汞菜窒埂榜末往苗尸译剑田悬过沾超膊诛琳吗掩梧粉爱获滚汇实白盒测试、黑盒测试白盒测试、黑盒测试59简化后的函数决策表钓凹情艳盏瘦聊销喊括亩梳仕赎砍焊薄妻祖贝巨凑抹胶泞赁札决咕森揣绘白盒测试、黑盒测试白盒测试、黑盒测试60测试用例秩仁鞋治闯舔传坟雌姑钨渐赊泪饿醇磕签迈寥阐佩貉犀丹扳绪桌痴邪毯酱白盒测试、黑盒测试白盒测试、黑盒测试61作业:1、某软件的一个模块的需求规格说明书中描述:在供应商业务处理中,有一个“检查订货单”的功能;档客户订货款项大于5000元时,如果客户拖欠款超过60天,向客户发一份拒绝供货

43、备忘录,在客户没有还清货款前不发供货单;如果客户拖欠款没有超过60天,可以发供货单。如果客户订款没有超过5000元,而客户拖欠款超过60元,仍可以发供货单,但还要发一份催款通知单;如果客户拖欠款没有超过60天,可以发供货单。要求:画出决策表橙面末吹诸浑弛犀壹奴忧绿糠蚌郴屉删娠饱去造威炔煌吾记痰坚郑交车颠白盒测试、黑盒测试白盒测试、黑盒测试62因果图法的简介l因果图法产生的背景:因果图法产生的背景:l 等价类划分法和边界值分析方法都是等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。各种组合、输入条件

44、之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。错的情况却被忽视了。l 如果在测试时必须考虑输入条件的各如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑试用例的设计,这就需要利用因果图(逻辑模型)。模型)。

45、l 葱惰助稠诵珐释汛忠灯准踩苞誉司帚狮荧币念俏痰钡拔樊街虫遂羚危博疵白盒测试、黑盒测试白盒测试、黑盒测试63因果图法的简介(续)l因果图法是基于这样的一种思想:一些程序因果图法是基于这样的一种思想:一些程序的功能可以用判定表(或称决策表)的形式的功能可以用判定表(或称决策表)的形式来表示,并根据输入条件的组合情况规定相来表示,并根据输入条件的组合情况规定相应的操作。应的操作。l因果图法的定义:是一种利用图解法分析输因果图法的定义:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合法,它适合于检查程序输入条件的

46、各种组合情况。情况。l采用因果图法设计测试用例的步骤:采用因果图法设计测试用例的步骤:l(1)根据程序规格说明书描述,分析并确)根据程序规格说明书描述,分析并确定因(输入条件)和果(输出结果或程序状定因(输入条件)和果(输出结果或程序状态的改变),画出因果图。态的改变),画出因果图。l(2)将得到的因果图转换为判定表。)将得到的因果图转换为判定表。l(3)为判定表中每一列所表示的情况设计)为判定表中每一列所表示的情况设计一个测试用例。一个测试用例。莆霖清飞熬舷丘筷掌性酌萨咯驶挝涡玖视鲜运拄砰詹肛军尺恢堪蚁废蝉视白盒测试、黑盒测试白盒测试、黑盒测试64因果图法的简介(续)l使用因果图法的优点:使

47、用因果图法的优点:l(1)考虑到了输入情况的各种组合以及各)考虑到了输入情况的各种组合以及各个输入情况之间的相互制约关系。个输入情况之间的相互制约关系。l(2)能够帮助测试人员按照一定的步骤,)能够帮助测试人员按照一定的步骤,高效率的开发测试用例。高效率的开发测试用例。l(3)因果图法是将自然语言规格说明转化)因果图法是将自然语言规格说明转化成形式语言规格说明的一种严格的方法,成形式语言规格说明的一种严格的方法,可以指出规格说明存在的不完整性和二义可以指出规格说明存在的不完整性和二义性。性。萍蹈佛滋穆仟佯撞莹针开鸽中式骨困浮篙丙佬鬃恩缀饥宁赛煮端擦秽丰躬白盒测试、黑盒测试白盒测试、黑盒测试65

48、 因果图l因果图中用来表示因果图中用来表示4种因果关系的基本符种因果关系的基本符号:号:c c1 1e e1 1恒等c c1 1e e1 1 非c c1 1e e1 1或c c2 2c c3 3c c1 1e e1 1与c c2 2盅茵闪饿嗜虚占嗅忿戏先戳验沏随浇晶滞劳堪雁荚材拈刨靡印加酪醉问棍白盒测试、黑盒测试白盒测试、黑盒测试66因果图(续)l因果图中的因果图中的4种基本关系种基本关系l 在因果图的基本符号中,图中的左在因果图的基本符号中,图中的左结点结点ci表示输入状态(或称原因),右结表示输入状态(或称原因),右结点点ei表示输出状态(或称结果)。表示输出状态(或称结果)。ci 与与

49、ei 取值取值0或或1,0表示某状态不出现,表示某状态不出现,1则表示则表示某状态出现。某状态出现。l恒等:若恒等:若 c1 是是1,则,则 e1 也为也为1,否则,否则 e1 为为0。l非:若非:若 c1 是是1,则,则 e1 为为0,否则,否则e1为为1。l或:若或:若 c1 或或 c2 或或 c3 是是1,则,则 e1 为为1,否,否则则 e1 为为0。l与:若与:若 c1 和和 c2 都是都是1,则,则 e1 为为1,否则,否则 e1 为为0。诚莉嚼轰很卡丛禾红定红缆问搀靡科屡伦州脸借焊榷莉阂赛化驶肠呆慌瑰白盒测试、黑盒测试白盒测试、黑盒测试67因果图(续)l因果图中的约束因果图中的约

50、束l 在实际问题中输入状态相互之间、输在实际问题中输入状态相互之间、输出状态相互之间可能存在某些依赖关系,称出状态相互之间可能存在某些依赖关系,称为为“约束约束”。对于输入条件的约束有。对于输入条件的约束有E、I、O、R四种约束,对于输出条件的约束只有四种约束,对于输出条件的约束只有M约束。约束。lE约束约束(异异):a和和b中最多有一个可能为中最多有一个可能为1,即,即a和和b不能同时不能同时 为为1。lI 约束约束(或或):a、b、c中至少有一个必须为中至少有一个必须为1,即,即 a、b、c不能同时为不能同时为0。lO约束约束(唯一唯一):a和和b必须有一个且仅有一个必须有一个且仅有一个为

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com