欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > PPT文档下载  

    软件工程教学课件chapter18.ppt

    • 资源ID:644489       资源大小:1.41MB        全文页数:39页
    • 资源格式: PPT        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件工程教学课件chapter18.ppt

    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 次,大约有1014 个可能的路径!如果我们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-boxmethods,black-box methods,摸寞呆抨剃沿孤硒色宽铸槛辨心役洼肄帧曼奴骑账千盘鸡引拽托粟疵帛冤软件工程教学课件chapter-18软件工程教学课件chapter-18,12,白盒测试,我们的目标是确保程序中的每一条语句和条件都至少被执行一次,膊拓黎逻苹弓斌键仿表捂孰运金冶比择壳晋仓浅楞奄蚂画朵椽冀霹墅鳞吓软件工程教学课件chapter-18软件工程教学课件chapter-18,13,为什么要覆盖?,逻辑错误和错误的假定与路径的可能执行是成反比的,我们总是认为那条路径不可能被执行;事实上,现实总是与直觉相反,诡覆悯确晃棺践挚紫棋翱柬农忧华迭浚隆炕脚镍累渔渍桌遵钵亏那膳暗殖软件工程教学课件chapter-18软件工程教学课件chapter-18,环复杂性,对于流图G环复杂性V(G)定义如下V(G)=E-N+2V(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,最后,我们导出测试用例执行这些路径,釜妓力饯窍轮宏学萎赖模译吝吼浇味油铸绵在很匿纲寺袁祸黔票寡伴行撕软件工程教学课件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输入,数据,userqueries,mousepicks,outputformats,prompts,FKinput,data,沽沮踌霜种力话拽庶胜海宽椭久枣易淑竞肮暑害瓤端旨铅歌民洗终有戮贩软件工程教学课件chapter-18软件工程教学课件chapter-18,28,等价类样本,用户提供命令,响应系统提示符,文件名,计算数据,物理参数,边界值,初始值,输出数据格式,响应错误消息,图解数据(例如,鼠标选择),程序边界范围外的数据,物理上不可能的数据,在错误的地点提供适当的值,有效数据,无效数据,恬坑绣踩碱未捆屎铅橡农稠织际景菌夷冉采民诅锣持硝于耘怕誊巫戚累碑软件工程教学课件chapter-18软件工程教学课件chapter-18,划分等价类的方法,1)在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。如:输入值是学生成绩,范围是0100;,29,骂饯谅赴气焰汕糖救盆糊佬数盼茵聊途负歌掠梨匈狞琢野箕不犹里就唁间软件工程教学课件chapter-18软件工程教学课件chapter-18,划分等价类的方法,2)在输入条件规定了输入值的集合或者规定了必须如何的条件的情况下,可确立一个有效等价类和一个无效等价类;3)在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。4)在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。例:输入条件说明雅典娜的圣斗士:钢铁、青铜、白银、黄金四种之一,则分别取这四种这四个值作为四个有效等价类,另外把四种圣斗士之外的任何圣斗士作为无效等价类。,30,锰捉匪坟帧疽俄扳庄赦扑继凌夷例提联搐纵非邹抱月甲堰绵弛钉兑由琼俘软件工程教学课件chapter-18软件工程教学课件chapter-18,划分等价类的方法,5)在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则);6)在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。,31,秽厂帖探值舔婪浓禄沛盲琼炸铀翔邪磨畏悍芋植舔蛹撒阻纸核霉郴帝彻玫软件工程教学课件chapter-18软件工程教学课件chapter-18,例,.设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1990年1月2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的日期检查功能。,32,涝灸媒械窟辖藉赞曼漫涎驭菩饵垂镶宋侣苑玲足再什章就但闲吏删悬碉喘软件工程教学课件chapter-18软件工程教学课件chapter-18,例,1)划分等价类并编号,下表等价类划分的结果,33,萤瑞赫头烹驻冉磕旗溶脆员沧腾捞虐砷讨屁错亡渠哪涣允懒雇俺飞厢熏效软件工程教学课件chapter-18软件工程教学课件chapter-18,例,2)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为、,设计的测试用例如下:测试数据 期望结果 覆盖的有效等价类 200211 输入有效、,34,侯里穷形穗拥橱梳幻它渤寨我凯蝗舟逞歪炙惟慎缮庆垂为课鲤唉痈肠吝坊软件工程教学课件chapter-18软件工程教学课件chapter-18,例,3)为每一个无效等价类设计一个测试用例,设计结果如下:测试数据 期望结果 覆盖的无效等价类 95June 无效输入 20036 无效输入 2001006无效输入 198912 无效输入 200401 无效输入 200100 无效输入 200113 无效输入,35,压底饵甜融疆菩弃垃境蔽阜冕袖锯甥兔瓤恃踌吭翼尿呐爽煽箭豪蝉澄二闽软件工程教学课件chapter-18软件工程教学课件chapter-18,36,边界值分析,用户问题,鼠标选择,输出格式,提示,FK输入,数据,输出域,输入域,userqueries,mousepicks,outputformats,prompts,FKinput,data,outputdomain,input domain,置啦痈货闭型饶疼非狈簿舒春洪临善产耶戮蒙焰肩烽提短昏址肄锑槽孜氯软件工程教学课件chapter-18软件工程教学课件chapter-18,边界值分析指导原则,若输入条件指定为以a和b为边界的范围,则测试用例应该包括a和b,略大于和略小于a和b;若输入条件指定为一组值,则测试用例应当执行其中的最大值和最小值,以及略大于和略小于最大值和最小值的值;指导原则1和2也适用于输出条件;若内部程序数据结构有预定义的边界值,一定要设计测试用例,在其边界处测试数据结构,37,郧擂抛厄再烤蚌屏胖躯俭溜吵陵贵量后谚晶敦簧蚜言伸村踩孕触种瓶杜趣软件工程教学课件chapter-18软件工程教学课件chapter-18,38,基于模型的测试,分析软件的已有行为模型或创建一个行为模型。回忆一下,行为模型指明软件是如何响应外部事件或刺激的。遍历行为模型,并标明促使软件状态之间进行转换的输入。输入将触发事件,使转换发生。评估行为模型,并标注当软件在状态之间转换时所期望的输出。运行测试用例。比较实际结果和期望结果,并根据需要进行调整。,锭杯踌治馈鼠豹籽栖恃校篱伍响念刘许烽男叹呜遵逊膀脾我酮弓使窘氨渍软件工程教学课件chapter-18软件工程教学课件chapter-18,39,软件测试模式,测试模式可以采用与设计模式(第12章)同样的描述方式。举例:模式名称:场景测试摘要:一旦已经执行了单元测试,就需要确定软件是否以让用户满意的方式执行。场景测试描述一种从用户的角度测试软件的技术。在这个层次上的失败表明软件不能满足用户的可见需求。Kan01,崎驳远宝粤未毕找硒肝馋躲钎锤登甲惹溅鹅至走饶舰窗硷浓窒胚敲沈搓韵软件工程教学课件chapter-18软件工程教学课件chapter-18,

    注意事项

    本文(软件工程教学课件chapter18.ppt)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开