语句覆盖和路径覆盖的区别

语句覆盖和路径覆盖的区别,第1张

区别:

1、度量对象

语句覆盖:程序中每一可执行语句

路径覆盖:程序中每条路径

2、覆盖程度

语句覆盖:语句覆盖常常被人指责为“最弱的旦塌覆盖”,它只管覆盖代码中的执行语句,却不考虑各种分支的组合等等。假如只要求达到语句覆盖,那么换来的确实测试效果不明显,很难更多地发现代码中的问题。

路径覆盖:在白盒测试法中,覆盖程度最高的就是路径覆盖,因为其覆盖程序中所有可能的路径。

扩展资料

逻辑覆盖是通过对程序逻辑结构的遍历实现程序的覆盖。它是一系列测试过程的总称,这组测试过程逐渐进行越来越完整的通路测试。

根据覆盖目标的不同和覆盖源程序语句的详尽程度,逻辑覆盖又可分为:语句覆友答盖,判定覆盖,条件覆盖,条件/判定覆盖,条件组合覆盖,路径覆盖。

语句覆盖(StatementCoverage) 又称行覆盖(LineCoverage),段覆盖(SegmentCoverage),基本块覆盖(BasicBlockCoverage),这是最常用也是最常见的一种覆盖方式,就是度量被测代码中每个可执行语句是否被执行到了。

这里说的是“可执行语句”,因此就不会包括像C++的头文件声明,代码注释,空行,等等。非常好理解,只统计能够执行的代模告圆码被执行了多少行。需要注意的是,单独一行的花括号{} 也常常被统计进去。

参考资料:百度百科 - 语句覆盖

语句覆盖(StatementCoverage) 又称行覆盖(LineCoverage),段覆盖(SegmentCoverage),基本块覆盖(BasicBlockCoverage),这是最常用也是最常见的一种覆盖方式,就是度量被测代码中每个可执行语句是否被执行到了。这里说的是“可执行语句”,因此就不会包括像C++的头文件声明,代码注释,空行,等等盯段配。非常好理解,只统计能够执行的代码被执行了多少行。需要注意的是,单独一行的花括号{} 也常常被统计进去。语句覆盖常常被人指责为“最弱的覆盖”,它只管覆盖代码中的执行语句,却不考虑各种分支的组合等等。假如只燃升要求达到语句覆盖,那么换来的确实测试效果不明显,很难更多地发现代码中的问题。

所谓判定覆盖,就是设计若干个测试用例,运行被测凯指程序,使得程序中每个判定条件的取真分支和取假分支至少评价一次。又称为分支覆盖。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12497555.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存