(精品)逻辑覆盖测试.ppt

上传人:hyn****60 文档编号:70980861 上传时间:2023-01-31 格式:PPT 页数:13 大小:282.50KB
返回 下载 相关 举报
(精品)逻辑覆盖测试.ppt_第1页
第1页 / 共13页
(精品)逻辑覆盖测试.ppt_第2页
第2页 / 共13页
点击查看更多>>
资源描述

《(精品)逻辑覆盖测试.ppt》由会员分享,可在线阅读,更多相关《(精品)逻辑覆盖测试.ppt(13页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、逻辑覆盖法void DoWork(int x,int y,int z)int k=0,j=0;if(x3)&(z5)j=x*y+10;/语句块2 j=j%3;/语句块3逻辑覆盖法(续)X3&z5执行语句块执行语句块3FFTTabdce语句覆盖要实现DoWork函数的语句覆盖,只需设计一个测试用例就可以覆盖程序中的所有可执行语句。测试用例输入为:x=4、y=5、z=5 程序执行的路径是:abd分析:语句覆盖可以保证程序中的每个语句都得到执行,但发现不了判定中逻辑运算的错误,即它并不是一种充分的检验方法。例如在第一个判定(x3)&(z5错误写为y3)&(z3 取真值记为T1,取假值记为-T1 条件

2、z5):条件x=4 取真值记为T3,取假值记为-T3 条件y5 取真值记为T4,取假值记为-T4条件覆盖根据条件覆盖的基本思想,要使上述4个条件可能产生的8种情况至少满足一次,设计测试用例如下:测试用例 执行路径 覆盖条件 覆盖分支 x=4、y=6、z=5 abd T1、T2、T3、T4 bd x=2、y=5、z=15 ace-T1、-T2、-T3、-T4 ce分析:上面这组测试用例不但覆盖了4个条件的全部8种情况,而且将两个判定的4个分支b、c、d、e也同时覆盖了,即同时达到了条件覆盖和判定覆盖。条件覆盖说明:虽然前面的一组测试用例同时达到了条件覆盖和判定覆盖,但是,并不是说满足条件覆盖就一

3、定能满足判定覆盖。如果设计了下表中的这组测试用例,则虽然满足了条件覆盖,但只是覆盖了程序中第一个判定的取假分支c 和第二个判定的取真分支d,不满足判定覆盖的要求。测试用例 执行路径 覆盖条件覆盖分支x=2、y=6、z=5 acd-T1、T2、-T3、T4 cdx=4、y=5、z=15 acdT1、-T2、T3、-T4 cd判定/条件覆盖判定/条件覆盖实际上是将判定覆盖和条件覆盖结合起来的一种方法,即:设计足够的测试用例,使得判定中每个条件的所有可能取值至少满足一次,同时每个判定的可能结果也至少出现一次。根据判定/条件覆盖的基本思想,只需设计以下两个测试用例便可以覆盖4个条件的8种取值以及4个判

4、定分支。测试用例 执行路径 覆盖条件覆盖分支x=4、y=6、z=5 abdT1、T2、T3、T4 bdx=2、y=5、z=15ace-T1、-T2、-T3、-T4 ce判定/条件覆盖分析:从表面上看,判定/条件覆盖测试了各个判定中的所有条件的取值,但实际上,编译器在检查含有多个条件的逻辑表达式时,某些情况下的某些条件将会被其它条件所掩盖。因此,判定/条件覆盖也不一定能够完全检查出逻辑表达式中的错误。例如:对于第一个判定(x3)&(z3和z3为假,则编译器将不再检查z5)来说,若条件x=4满足,就认为该判定为真,这时将不会再检查y5,那么同样也无法发现这个条件中的错误。组合覆盖组合覆盖的目的是要

5、使设计的测试用例能覆盖每一个判定的所有可能的条件取值组合。对DoWork函数中的各个判定的条件取值组合加以标记:1、x3,z3,z=10 记做T1-T2,第一个判定的取假分支 3、x=3,z10 记做-T1 T2,第一个判定的取假分支 4、x=10 记做-T1-T2,第一个判定的取假分支 5、x=4,y5 记做T3 T4,第二个判定的取真分支 6、x=4,y5 记做-T3 T4,第二个判定的取真分支 8、x!=4,y=5 记做-T3-T4,第二个判定的取假分支组合覆盖根据组合覆盖的基本思想,设计测试用例如下:测试用例 执行路径 覆盖条件覆盖组合号x=4、y=6、z=5 abd T1、T2、T3

6、、T4 1和5 x=4、y=5、z=15 acd T1、-T2、T3、-T4 2和6 x=2、y=6、z=5 acd -T1、T2、-T3、T4 3和7 x=2、y=5、z=15 ace -T1、-T2、-T3、-T4 4和8分析:上面这组测试用例覆盖了所有8种条件取值的组合,覆盖了所有判定的真假分支,但是却丢失了一条路径abe。路径覆盖前面提到的5种逻辑覆盖都未涉及到路径的覆盖。事实上,只有当程序中的每一条路径都受到了检验,才能使程序受到全面检验。路径覆盖的目的就是要使设计的测试用例能覆盖被测程序中所有可能的路径。根据路径覆盖的基本思想,在满足组合覆盖的测试用例中修改其中一个测试用例,则可以

7、实现路径覆盖:测试用例 执行路径 覆盖条件 x=4、y=6、z=5 abdT1、T2、T3、T4 x=4、y=5、z=15 acdT1、-T2、T3、-T4 x=2、y=5、z=15 ace-T1、-T2、-T3、-T4 x=5、y=5、z=5 abeT1、T2、-T3、-T4 路径覆盖分析:虽然前面一组测试用例满足了路径覆盖,但并没有覆盖程序中所有的条件组合(丢失了组合3和7),即满足路径覆盖的测试用例并不一定满足组合覆盖。说明:对于比较简单的小程序,实现路径覆盖是可能做到的。但如果程序中出现较多判断和较多循环,可能的路径数目将会急剧增长,要在测试中覆盖所有的路径是无法实现的。为了解决这个难题,只有把覆盖路径数量压缩到一定的限度内,如程序中的循环体只执行一次。在实际测试中,即使对于路径数很有限的程序已经做到路径覆盖,仍然不能保证被测试程序的正确性,还需要采用其他测试方法进行补充。

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

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

本站为文档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