大家好,今天来为大家分享语句覆盖和路径覆盖的区别的一些知识点,和路径覆盖的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
本文目录
路径覆盖一定满足什么覆盖软件测试中判定覆盖和路径覆盖有什么区别语句覆盖和路径覆盖的区别判定覆盖、语句覆盖。
1、路径覆盖要求测试用例覆盖所有可能的执行路径,而每个执行路径都包含一个或多个判定,在每个判定中路径覆盖都会包含其所有可能的结果,因此判定覆盖也会满足。
2、路径覆盖要求覆盖所有可能的执行路径,而每个执行路径都由一系列语句组成,在满足路径覆盖的情况下,必然会执行每个语句至少一次,从而满足了语句覆盖的要求。
判定覆盖:判定覆盖就是设计若干个测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次。
路径测试:路径测试就是设计足够的测试用例,覆盖程序中所有可能的路径;
路径测试是最强的覆盖准则。
在我们课件上摘的,还不明白的话留下邮箱我把课件传你,有例子,是有图的。
判定覆盖好象也会做到路径覆盖
那是在给定数据比较小的情况下的,要是很大型的程序就不可能了阿,判定覆盖只要选择的路径中满足每个判断的取真分支和取假分支至少经历一次就可以了阿,不一定经过所有路径的。课件发给你了。
区别:
1、度量对象
语句覆盖:程序中每一可执行语句
路径覆盖:程序中每条路径
2、覆盖程度
语句覆盖:语句覆盖常常被人指责为“最弱的覆盖”,它只管覆盖代码中的执行语句,却不考虑各种分支的组合等等。假如只要求达到语句覆盖,那么换来的确实测试效果不明显,很难更多地发现代码中的问题。
路径覆盖:在白盒测试法中,覆盖程度最高的就是路径覆盖,因为其覆盖程序中所有可能的路径。
扩展资料
逻辑覆盖是通过对程序逻辑结构的遍历实现程序的覆盖。它是一系列测试过程的总称,这组测试过程逐渐进行越来越完整的通路测试。
根据覆盖目标的不同和覆盖源程序语句的详尽程度,逻辑覆盖又可分为:语句覆盖,判定覆盖,条件覆盖,条件/判定覆盖,条件组合覆盖,路径覆盖。
语句覆盖(StatementCoverage)又称行覆盖(LineCoverage),段覆盖(SegmentCoverage),基本块覆盖(BasicBlockCoverage),这是最常用也是最常见的一种覆盖方式,就是度量被测代码中每个可执行语句是否被执行到了。
这里说的是“可执行语句”,因此就不会包括像C++的头文件声明,代码注释,空行,等等。非常好理解,只统计能够执行的代码被执行了多少行。需要注意的是,单独一行的花括号{}也常常被统计进去。
参考资料:百度百科-语句覆盖
如果你还想了解更多这方面的信息,记得收藏关注本站。