收藏 分销(赏)

单元测试驱动程序.pptx

上传人:精*** 文档编号:4827145 上传时间:2024-10-14 格式:PPTX 页数:31 大小:554.67KB
下载 相关 举报
单元测试驱动程序.pptx_第1页
第1页 / 共31页
单元测试驱动程序.pptx_第2页
第2页 / 共31页
单元测试驱动程序.pptx_第3页
第3页 / 共31页
单元测试驱动程序.pptx_第4页
第4页 / 共31页
单元测试驱动程序.pptx_第5页
第5页 / 共31页
点击查看更多>>
资源描述

1、1内容内容(1)单元测试驱动程序桩程序互动(2)集成测试 自顶向下自底向上混合策略三明治方法2单元测试单元测试l 什么是单元测试?什么是单元测试?v单元测试单元测试就是对已实现的软件最小单元进行测试,以保证构成软件系统的各个单元的质量v单元测试活动中,强调被测试对象的独立性v单元测试应从各个层次来对单元内部算法、外部功能实现等进行检验,包括对程序代码的评审和通过运行单元程序来验证其功能特性等内容。3单元测试单元测试v单元实现了其特定的功能,如果需要,返回正确的值v单元的运行能够覆盖预先设定的各种逻辑v在单元工作过程中,其内部数据能够保持完整性,包括全局变量的处理、内部数据的形式、内容及相互关系

2、等不发生错误v可以接受正确数据,也能处理非法数据,在数据边界条件上,单元也能够正确工作v该单元的算法合理,性能良好v该单元代码经过扫描,没有发现任何安全性问题4单元测试单元测试l 单元测试的方法单元测试的方法v单元测试主要采用白盒测试方法,辅以黑盒测试方法。白盒测试方法应用于代码评审、单元程序检验之中,而黑盒测试方法则应用于模块、组件等大单元的功能测试之中5单元测试单元测试v黑盒测试方法黑盒测试方法(Blake-boxTesting),是把程序看作一个不能打开的黑盒子,不考虑程序内部结构和内部特性,而是考察数据的输入、条件限制和数据输出,完成测试v白盒测试方法白盒测试方法(White-boxT

3、esting),也称结构测试或逻辑驱动测试。白盒测试方法是根据模块内部结构了解,基于内部逻辑结构,针对程序语句、路径、变量状态等来进行测试,检验程序中的各个分支条件是否得到满足、每条执行路径是否按预定要求正确的工作。l 黑盒测试黑盒测试 和和 白盒测试白盒测试6单元测试单元测试v驱动程序驱动程序(driver),对底层或子层模块进行(单元或集成)测试时所编制的调用被测模块的程序,用以模拟被测模块的上级模块v桩程序桩程序(stub),也有人称为存根程序,对顶层或上层模块进行测试时,所编制的替代下层模块的程序,用以模拟被测模块工作过程中所调用的模块。7单元测试单元测试ABCDEFGTest驱动程序

4、调用运行桩程序桩程序测试结果被测模块B8单元测试单元测试l 桩单元桩单元intstub_add(inta,intb)if(a=1)&(b=1)return2;if(a=2)&(b=-1)return1;if(a=3)&(b=0)return3;if(a=4)&(b=1)return5;.解释这段代码含义 volunteer?9单元测试单元测试l 驱动单元驱动单元解释这段代码含义 volunteer?voiddriver(X,Y,Z)intsum=0;sum=add(X,Y);if(Z=sum)printf(testcaseCAL_ST_SRS001_001OK!n);elseprintf(te

5、stcaseCAL_ST_SRS001_001fail!n);10单元测试单元测试l 驱动程序驱动程序 和和 桩程序桩程序 示意图示意图volunteer?ABCDEFGTest11单元测试单元测试l 驱动程序驱动程序 和和 桩程序桩程序 示意图示意图volunteer?ABCDEFGTest12集成测试集成测试l 非渐增式模式非渐增式模式采用大棒集成方法采用大棒集成方法,先是对每一个子模块进行测试先是对每一个子模块进行测试(单元测试阶段),然后将所有模块一次性的全部集成(单元测试阶段),然后将所有模块一次性的全部集成起来进行集成测试起来进行集成测试。因为所有的模块一次集成的,所以很难确定出错

6、的真正位置、所在的模块、错误的原因。这种方法并不推荐在任何系统中使用,适合在规模较小的应用系统中使用。13集成测试集成测试l 非渐增式模式非渐增式模式14集成测试集成测试l渐增式集成模式与非渐增式集成模式渐增式集成模式与非渐增式集成模式非渐增式测试模式非渐增式测试模式:先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序,如大棒模式。渐增式测试模式渐增式测试模式:把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试。15集成测试集成测试l 自顶向下自顶向下16集成测试集成测试l 非渐增式模式非渐增式模式 AS3S4S5d2 Cd4

7、 Ed5 Fd1 B s1d3 s2 DABCDEFABCDEF(1)程序结构图(2)单元测试示意图17集成测试集成测试l 自顶向下:深度优先自顶向下:深度优先ABCDEFvolunteer?18集成测试集成测试l 自顶向下:深度优先自顶向下:深度优先19集成测试集成测试l 自顶向下:宽度优先自顶向下:宽度优先ABCDEFvolunteer?20集成测试集成测试l 自顶向下:宽度优先自顶向下:宽度优先21集成测试集成测试l 自底向上自底向上22集成测试集成测试l 自底向上自底向上 A B C D E Fvolunteer?23集成测试集成测试l 自底向上自底向上 A B C D E F d2

8、Cd1 Ed3 Fd4 B Ed5 F D A B C D E F24集成测试集成测试l 混合策略混合策略混合法:对软件结构中较上层,使用的是混合法:对软件结构中较上层,使用的是“自顶向下自顶向下”法;对软件结构中较下层,使用的是法;对软件结构中较下层,使用的是“自底向上自底向上”法,法,两者相结合两者相结合 25集成测试集成测试l 三明治方法三明治方法采用三明治方法的优点是:它将自顶向下和自底向上的集成方法有机地结合起来,不需要写桩程序因为在测试初自底向上集成已经验证了底层模块的正确性。采用这种方法的主要缺点是:在真正集成之前每一个独立的模块没有完全测试过。26集成测试集成测试l 三明治方法三明治方法 A B C D E Fvolunteer?27集成测试集成测试l 三明治方法三明治方法28集成测试集成测试l 改进的三明治方法改进的三明治方法改进的三明治集成方法,不仅自两头向中间集成,而且改进的三明治集成方法,不仅自两头向中间集成,而且保证每个模块得到单独的测试,使测试进行得比较彻底保证每个模块得到单独的测试,使测试进行得比较彻底。29集成测试集成测试l 改进的三明治方法改进的三明治方法 A B C D E Fvolunteer?30集成测试集成测试l 改进的三明治方法改进的三明治方法31END

展开阅读全文
部分上传会员的收益排行 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助手
百度文库年卡

猜你喜欢                                   自信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 

客服