软件测试中条件覆盖,路径覆盖,语句覆盖,分支覆盖的区别
来源:互联网 发布:网络融资骗局 编辑:程序博客网 时间:2024/04/19 23:20
转载来自:http://www.cnblogs.com/ganmk/archive/2008/11/07/1328585.html
举个例子吧
if A and B then Action1
if C or D then Action2
语句覆盖最弱,只需要让程序中的语句都执行一遍即可 。上例中只需设计测试用例使得A=true B=true C=true 即可。
分支覆盖又称判定覆盖:使得程序中每个判断的取真分支和取假分支至少经历一次,即判断的真假均曾被满足。上例需要设计测试用例使其分别满足下列条件即可(1)A=true,B=true,C=true,D=false(2)A=true,B=false,C=false,D=false。
条件覆盖:要使得每个判断中的每个条件的可能取值至少满足一次。上例中第一个判断应考虑到A=true,A=false,B=true,B=false第二个判断应考虑到C=true,C=false,D=true,D=false,所以上例中可以设计测试用例满足下列条件(1)A=true,B=true,C=true,D=true(2)A=false,B=false,C=false,D=false。
路径覆盖:要求覆盖程序中所有可能的路径。所以可以设计测试用例满足下列条件(1)A=true,B=true,C=true,D=true(2)A=false,B=false,C=false,D=false(3)A=true,B=true,C=false,D=false(4)A=false,B=false,C=true,D=true。
不论那种覆盖方法,都不能保证程序的正确性。
举个例子吧
if A and B then Action1
if C or D then Action2
语句覆盖最弱,只需要让程序中的语句都执行一遍即可 。上例中只需设计测试用例使得A=true B=true C=true 即可。
分支覆盖又称判定覆盖:使得程序中每个判断的取真分支和取假分支至少经历一次,即判断的真假均曾被满足。上例需要设计测试用例使其分别满足下列条件即可(1)A=true,B=true,C=true,D=false(2)A=true,B=false,C=false,D=false。
条件覆盖:要使得每个判断中的每个条件的可能取值至少满足一次。上例中第一个判断应考虑到A=true,A=false,B=true,B=false第二个判断应考虑到C=true,C=false,D=true,D=false,所以上例中可以设计测试用例满足下列条件(1)A=true,B=true,C=true,D=true(2)A=false,B=false,C=false,D=false。
路径覆盖:要求覆盖程序中所有可能的路径。所以可以设计测试用例满足下列条件(1)A=true,B=true,C=true,D=true(2)A=false,B=false,C=false,D=false(3)A=true,B=true,C=false,D=false(4)A=false,B=false,C=true,D=true。
不论那种覆盖方法,都不能保证程序的正确性。
0 0
- 软件测试中条件覆盖,路径覆盖,语句覆盖,分支覆盖的区别
- 软件测试中条件覆盖,路径覆盖,语句覆盖,分支覆盖的区别
- 软件测试中条件覆盖,路径覆盖,语句覆盖,分支覆盖的区别
- 软件测试中条件覆盖,路径覆盖,语句覆盖,分支覆盖的区别
- 软件测试中条件覆盖,路径覆盖,语句覆盖,分支覆盖的区别
- 软件测试中条件覆盖,路径覆盖,语句覆盖,分支覆盖的区别
- 软件测试中条件覆盖,路径覆盖,语句覆盖,分支覆盖的区别
- 软件测试中的语句覆盖,分支覆盖,条件覆盖以及路径覆盖
- 条件覆盖,路径覆盖,语句覆盖,分支覆盖
- 条件覆盖,路径覆盖,语句覆盖,分支覆盖解释
- 条件覆盖,路径覆盖,语句覆盖,分支覆盖解释
- 条件覆盖,路径覆盖,语句覆盖,分支覆盖解释
- 【测试】语句覆盖,判定覆盖,条件覆盖,路径覆盖
- 测试覆盖:语句覆盖 判定覆盖(即分支覆盖) 条件覆盖 判定-条件覆盖 条件组合覆盖 路径覆盖
- 白盒测试:语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、组合覆盖、路径覆盖
- 白盒测试 语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖
- 白盒测试 语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖
- 白盒测试 语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖
- 【机器学习算法】之朴素贝叶斯
- 029.For Error 死循环
- win8系统配置开发环境记录
- iOS9问题汇总
- linux 常用命令
- 软件测试中条件覆盖,路径覆盖,语句覆盖,分支覆盖的区别
- 面向对象编程中如何描述对象之间的关系?
- iOS bundle id的作用
- 028.For 循环
- 从0开始<十二>:strcpy、strcmp、strcat函数的实现
- docker hub使用
- 网站缓存技术 ehcache memcache redis 的比较
- 数据的归一化
- 利用fastjson进行json字符串与对象互转