软件工程教学课件chapter18

上传人:功*** 文档编号:252365980 上传时间:2024-11-15 格式:PPT 页数:39 大小:1.41MB
返回 下载 相关 举报
软件工程教学课件chapter18_第1页
第1页 / 共39页
软件工程教学课件chapter18_第2页
第2页 / 共39页
软件工程教学课件chapter18_第3页
第3页 / 共39页
点击查看更多>>
资源描述
,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,These slides are designed to accompany,Software Engineering:A Practitioners Approach,7/e,(McGraw-Hill 2009).Slides copyright 2009 by Roger Pressman.,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,1,第,18,章 测试传统的应用系统,石笺盔阑须冈圆棉瑶核捂绪顾拽负驶空员慌藉根孩对页氮彝训诀角馒樟吃软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,2,可测试性,可操作性,有效地操作,可观察性,每个测试用例的结果都是易观察的,可控制性,测试能被自动化执行和优化的程度,可分解性,有针对的测试,简单性,减少复杂的体系结构和逻辑以简化测试,稳定性,测试过程需求变更不经常发生,易理解性,对设计的较好理解,调读壕舅室诡码外请摘辣卤羹洋郧像忆痈恳燥颓薪忠猎书警傈蝶曼祷孟鸥软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,3,什么是“好”的测试,好的测试有较高的发现错误的可能性,好的测试是不冗余的,好的测试应该既不简单也不太复杂,团昼韵鸡营尽警羔苹府曹留趋先寇椒抑谱漆杀录嚎黔墙嗡痛黄藩炸二挑史软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,4,内部视角和外部视角,任何工程化的产品(以及大多数其他东西)都可以采用以下两种方式之一进行测试:,了解已设计的产品要完成的指定功能,可以执行测试以显示每个功能是可操作的,同时,查找在每个功能中的错误;,了解产品的内部工作情况,可以执行测试以确保“所有的齿轮吻合”,即内部操作依据规格说明执行,而且对所有的内部结构已进行了充分测试。,铜奠融雕嗓髓粳凰轿声援滞舅赏妮伦趣铺诅摊简聘淌皖箱实规劫愤怜综健软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,5,测试用例设计,“Bugs,潜伏在角落及在边界处聚集,Boris Beizer,目标,准则,限制,发现错误,以一个完整的方式,用最少的工作量和时间,Bugs lurk in corners,and congregate at,boundaries.,OBJECTIVE,CRITERIA,CONSTRAINT,to uncover errors,in a complete manner,with a minimum of effort and time,篇悼棚乱衔趣倾硒添遂指紧厅焕菊愤旁粟既机涵凌醇巴孕涟钟本胃茸偏兜软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,流图表示,简单的控制流表示方法,6,贱膜爱杉沛棚兄稳朱硫储塔哪薛镶喇值掳宵妈爷榷撞拇么如私椿貉妮甲蔑软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,流程图与流图,7,角易蹿升距做刻熬臆秦侈逻幢怨蚂录赎幼谨瞅栖俊籍与拇线遵梧沾馒棠旁软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,复合逻辑,8,糕稼粕柞陪彼核禁猾畏彪荤钡森涟恫答雄鸦恭癸导壹老倚守燃那空屏橡妹软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,9,穷举设计,循环,20,次,大约有,10,14,个可能的路径!如果我们,1,毫秒内执行一个测试,用例,则测试这个程序要工作,3170,年!,loop 20 X,There are 10 possible paths!If we execute one,test per millisecond,it would take 3,170 years to,test this program!,硼救射础俞俺省渔挟葫闹祈寂够腆耗借停铡循枯贴豢闻孙胚钦引挥彻蔑弧软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,10,选择测试,循环,20,次,选择路径,loop 20 X,Selected path,儡阴吼想画乞臆毗娠闰节虚澡纹载稍姐泡埋殿辩臼褒摧蔼绒股孰雪淄撑鱼软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,11,软件测试,方法,策略,白盒方法,黑盒方法,Methods,Strategies,white-box,methods,black-box,methods,摸寞呆抨剃沿孤硒色宽铸槛辨心役洼肄帧曼奴骑账千盘鸡引拽托粟疵帛冤软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,12,白盒测试,我们的目标是确保程序中的每一条语句和条件都至少被执行一次,膊拓黎逻苹弓斌键仿表捂孰运金冶比择壳晋仓浅楞奄蚂画朵椽冀霹墅鳞吓软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,13,为什么要覆盖?,逻辑错误和错误的假定与路径的可能执行是成反比的,我们总是,认为,那条路径不可能被执行;事实上,,现实总是与直觉相反,诡覆悯确晃棺践挚紫棋翱柬农忧华迭浚隆炕脚镍累渔渍桌遵钵亏那膳暗殖软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,环复杂性,对于流图,G,环复杂性,V(G),定义如下,V(G)=E-N+2,V(G)=P+1,其中,E,为流图的边数,,N,为流图的结点数。,P,为包含在流图,G,中的判定结点数。,14,焦芳蛮浙繁抚俞针椿励炊钥稍名声炯状慧漆触篮挑丫邦灭绘息倡今树咙哺软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,15,基本路径测试,首先,我们计算出环复杂性:,简单决策数,+1,或,封闭区域数,+1,在这个例子中,,V(G)=4,绪赤谰谷赌篷模每倪秒受名蛋恒背巧柑谗沽腊闰迫枚强坷狸没遣镰欧庇葵软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,16,环复杂性,许多企业研究表明,,V(G),越高,其错误的概率就越高,V(G),模块,模块在这个范围内易发生更多错误,A number of industry studies have indicated,that the higher V(G),the higher the probability,or errors.,modules,modules in this range are,more error prone,烯师衷潮箍冯波瞒弃尖享征音茅斜川觅善朴绢苟虐踌盗寿湿羔饵靛乏病晶软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,17,基本路径测试,下一步,我们导出独立路径,因为,V(G)=4,有,4,条路径,路径,1:1,2,3,6,7,8,路径,2:1,2,3,5,7,8,路径,3:1,2,4,7,8,路径,4:1,2,4,7,2,4,.7,8,最后,我们导出测试用例执行这些路径,1,2,3,4,5,6,7,8,釜妓力饯窍轮宏学萎赖模译吝吼浇味油铸绵在很匿纲寺袁祸黔票寡伴行撕软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,18,基本路径测试说明,我们不需要画流图,但是,当追踪程序路,径时这幅图能帮助我们,计算每一个简单逻辑测试,当有两个或更,多时,复合测试计算,基本路径测试应应用到关键模型,潭遂酗譬鬼煮漠骑瞩盏榜舒躁妄十戌辗座贼纽懦髓丰湿詹硝仆候弃婴池联软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,例,19,按展底炸倔薯肤贫崔蓖锦吠篆历靶蛀巫吸颓致轰培纤酸哭允劈为疤弧洱柴软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,20,导出测试用例,总结,以设计或源码为基础,画出相应的流图,。,确定所得流图的环复杂性。,确定线性独立路径的基本集合。,准备测试用例,强制执行基本集合中的每条路径。,凿辟地勉提港狙室骆坡且离演只殆负赦惟括烹兜万同拖翔迫冷号几蜗纱氰软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,21,控制结构测试,条件测试,通过检查程序模块中包含的逻辑条件进行测试用例设计的方法,数据流测试,根据变量的定义和使用位置来选择程序测试路径,鸣综呜茨疯仿显便油妹筷吟滥席鸡尔升快旦痛杀罐碰晴抚钳痰锯肠鼓宣伯软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,22,循环测试,嵌套循环,串接循环,非结构化循环,简单循环,Nested,Loops,Concatenated,Loops,Unstructured,Loops,Simple,loop,堑天斗祈秃痛拼垦悉辗垄股柔台崖类穿簿冯屈年朗冒掉叔情邦俗谆肺奈帜软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,23,循环测试:简单循环,最少条件,简单循环,1.,跳过整个循环,2.,只有一次通过循环,3.,两次通过循环,4.m,次通过循环,其中,m n,5.(n-1),n,和,(n+1),次通过循环,其中,n,是允许通过的最大次数,姚程胆箭咙歪庆账棚垃屋杉劳锦仟粒啸粕侧拓磊讥楚装剧这拆榷漓策蜕苛软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,24,循环测试:嵌套循环,从最内层循环开始,将其他循环设置为最小迭代参量值。,测试,min+1,、典型的、,max1-1,和内层循环的最大值,而使外,层循环的迭代参数值最小。,由内向外构造下一个循环并按步骤,2,设置,使所有其他循环为,典型值。继续这一步直至最外层循环被测试,If,串接循环的每个循环彼此独立,then,可以使用简单循环测试方法,else,使用嵌套循环测试方法,Endif,例如,第,1,个循环的最后循环计数值为第,2,个循环的初始值。,嵌套循环,串接循环,你以寡狂稠摊假非茂硼剁蛀亮肮颧腰更排凳震京雀刺造容坟佑烽王大矛梗软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,25,黑盒测试,需求,事件,输入,输出,requirements,events,input,output,足樟岔互搞忙躲邀恋数痈赤舞傻姬痉易耗耪碗经坎伯去帛梁赂靛矢墙阀彤软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,26,黑盒测试,如何测试功能的有效性?,如何测试系统的行为和性能?,哪种类型的输入会产生好的测试用例?,系统是否对特定的输入值特别敏感?,如何分离数据类的边界?,系统能承受什么样的数据速率和数据量?,特定类型的数据组合会对系统运行产生什么样的影响?,椒纷撂馏民设姻溶地动权馅猎袒浊燃扛秧栅蓉椭馅饶溢生敦宰墓伦掉童鹰软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,27,等价类划分,用户问题,鼠标选择,输出格式,提示,FK,输入,数据,user,queries,mouse,picks,output,formats,prompts,FK,input,data,沽沮踌霜种力话拽庶胜海宽椭久枣易淑竞肮暑害瓤端旨铅歌民洗终有戮贩软件工程教学课件,chapter-18,软件工程教学课件,chapter-18,28,等价类样本,用户提供命令,响应系统提示符,文件名,计算数据,物理参数,边界值,初始值,输出数据格式,响应错误消息,图解数据(例如,鼠标选择),程序边界范围外的数据,物理上不可能的数据,在错误的地点提供适当的值,有效数据,无效数据,恬坑绣踩碱未捆屎铅橡农稠织际景菌夷冉采
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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