软件测试技术04-动态测试-白盒测试.ppt

软件测试技术04-动态测试-白盒测试.ppt

ID:56411644

大小:866.00 KB

页数:26页

时间:2020-06-17

软件测试技术04-动态测试-白盒测试.ppt_第1页
软件测试技术04-动态测试-白盒测试.ppt_第2页
软件测试技术04-动态测试-白盒测试.ppt_第3页
软件测试技术04-动态测试-白盒测试.ppt_第4页
软件测试技术04-动态测试-白盒测试.ppt_第5页
资源描述:

《软件测试技术04-动态测试-白盒测试.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、易禹2021/10/6软件测试技术第四讲:动态测试-白盒测试最基本的白盒测试–插桩法2printflogSystem.out.println在被测程序中插入操作(探测器),实现探查和监控的功能。功能:检查程序的走向、计数、中间变量、…基本概念3通过运行被测试程序,检查运行结果,分析其性能。组成部分;构造测试用例;运行程序;分析结果。动态测试分类4单元测试:对软件的各个模块进行测试;集成测试:检查各单元之间的接口是否正确,非渐增和渐增式测试;组装测试:单元测试的扩展,若干个单元间数据传输测试;确认测试:对组装测试结果的检验,用户参与或主导的测试过程;系统测试:测试系统

2、在真实条件下的运行情况(负载、安全、疲劳等等)。验收测试:购买者对软件的测试。验收测试系统测试确认测试单元/集成测试手动测试“白盒”测试5与“黑盒”测试对应,在熟悉程序内部逻辑和结构设计的基础上进行的测试。测试内容:对程序所有独立执行路径进行一次测试;对所有逻辑判定的两种情形至少测试一次;在循环的边界和运行的边界限内执行循环体;测试内部数据结构的有效性。“白盒”测试的目标6如果要测试下面的函数,需要构造哪些测试用例?范例程序:行1publicintfunc(inta,intb,intx){行2if((a>1)&&(b==0))行3x=x/a;行4if((a==2)

3、

4、

5、(x>1))行5x=x+1;行6returnx;行7}范例程序的流程图7逻辑覆盖的原则8是指在熟悉程序内部的逻辑结构基础上的测试方法,又可以细分为:语句覆盖保证每一条语句都至少执行一次;路径为ACE的测试用例(例如:a=2,b=0,x=3);逻辑覆盖的原则9缺点:覆盖不完整,忽略了IF语句为假的情况;没有测试IF语句的每一个逻辑表达式。“白盒”测试之判断覆盖保证每一个分支至少执行一次;如两个测试用例(ACD和ABE)判断覆盖的缺点:覆盖程度不高。“白盒”测试之条件覆盖10每个条件组合获得各种可能的结果;“白盒”测试之条件覆盖11如果选用两个测试用例来覆盖:a=2,

6、b=0,x=4,路径:ACE;a=1,b=1,x=1,路径:ABD;判断覆盖vs.条件覆盖12判断覆盖关心判定表达式的结果,而条件覆盖关心每个表达式的取值,不关心整个判定表达式的最终值;判断覆盖不能涵盖条件覆盖,反之亦然。例如,下面的用例仅满足条件覆盖,不满足判断覆盖:a=2,b=0,x=1,路径:ACE;a=1,b=1,x=2,路径:ABE;“白盒”测试之其他覆盖13判断/条件覆盖:判断中每个条件的所有取值至少执行一次,同时每个判断的所有结果至少执行一次。例如:路径:ACE和ABD就满足判断/条件覆盖。条件组合覆盖:各种条件组合至少出现一次,如判断(a>1)&&(

7、b==0)共有4种组合。路径覆盖:所有可能的路径至少执行一次,范例程序共4条路径。“白盒”测试练习14请说出下面的程序最少需要几个测试用例以满足判断覆盖和条件组合覆盖?行1publicintfunc(inta,intb,intc){行2if((a>b)&&(a>c))行3a=b+c;行4if(b>c)行5b=a-c;行6returnc;行7}参考答案15判断覆盖2条件组合覆盖6动态测试之路径测试16是根据程序逻辑所产生的路径设计测试用例的方法,常用的有:DD(Decision-To-Decision)路径测试:基于路径覆盖的思想,考虑各分支的覆盖情况,压缩串行部分;

8、DD路径测试压缩图:用来反映程序的分支情况,方便进行测试用例设计;DD路径据称可以发现约85%的缺陷!DD路径测试压缩图实例17其中:数字表示行号,字母表示压缩合并的节点。基本路径测试18现实程序中可能的路径一般是天文数字!解决办法:压缩覆盖的路径数到一定限度内,如语句覆盖。McCabe提出了基本路径测试,保证每条语句至少执行一次,而且判断能取真、假两种值。McCabe圈复杂度V(G)V(G)=m−n+2,其中m:弧数n:节点数McCabe圈复杂度示例19右图的圈复杂度是多少?V(G)=17−13+2=6,表示有6条独立的路径。独立路径与判定节点20独立路径:一条完

9、整的路径,至少包含一条前面路径未包含的边;圈复杂度决定了独立路径的条数;决定独立路径的关键:判定节点。独立路径示例21测试用例设计22为每一条独立路径设计可强制执行的测试用例;这些测试用例可以保证:语句覆盖:每一条语句都被执行了一次;每个判断条件都分别去过真和假两个值。23请画出下面程序的流程图,计算圈复杂度和独立路径,并设计测试范例。publicintfunc(inta,intb){行1intm=1;行2if(a

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。