多语言展示
当前在线:1792今日阅读:26今日分享:39

各种逻辑覆盖的介绍

逻辑覆盖是以程序内部的逻辑结构为基础的白盒测试用例设计技术。要求测试人员对程序的逻辑结构有清楚的了解。由于覆盖的目标不同,逻辑覆盖可分为语句覆盖、判断覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖及路径覆盖。
工具/原料

测试用例设计

方法/步骤
1

1.语句覆盖    语句覆盖就是设计若干个测试用例,运行所测试用例,使得每一条可执行语句至少被执行一次,但这种覆盖对检测错误而言并不是完美无缺的,它有时候也不能发现有些错误。    因此,测试用例虽然做到了语句覆盖,但有时候可能发现不了判断中逻辑运算中出现的错误,和下面所要介绍的几种逻辑覆盖相比较,语句覆盖是最弱的逻辑覆盖。

2

2.判定覆盖    判定覆盖就是设计若干个的测试用例,然后运行所测试程序,最后使得程序中每以个判断的取真分支和取假分支至少经历一次。所以,判定覆盖又被称为分支覆盖。    在测试用例中,取法不是唯一的,判定覆盖测试仍然可能存在问题,因此,仅仅满足判定覆盖仍然无法确定判断内部条件的错误。

3

3.条件覆盖    条件覆盖就是设计若干个的测试用例,然后运行所测试程序,最后使得程序中每个判断的每个条件的可能取值至少执行一次。   有时候测试虽然满足了条件覆盖,但不满足判定覆盖的要求。所以, 条件覆盖不一定包含判定覆盖;判定覆盖也不一定包含条件覆盖,为解决这一矛盾,需要对条件和分支兼顾,考虑下面的判定-条件覆盖。

4

4.判定-条件覆盖    判定-条件覆盖就是设计足够的测试用例,使得判断中每个条件的所有可能取值至少被执行一次,同时每个判断本身的所有可能判断结果至少执行一次。即要求各个判断的所有可能的条件取值组合至少执行一次。    有时候测试用例虽然测试了所有条件的取值,但情况并非如此,因为往往某些条件会掩盖另一些条件,因此,采用判定-条件覆盖,逻辑表达式中的错误不一定能够查的出来。

5

5.条件组合覆盖    条件组合覆盖就是设计足够的测试用例,运行所测试程序,使得每个判断的所有可能的条件取值组合至少执行一次。    这种覆盖方法在运用时,测试用例种虽然覆盖了所有条件的可能取值的组合,也覆盖了所有判断的可取分支,但可能还会漏掉一些路径,所以说测试还是不完全的。

6

6.路径测试    路径测试就是设计足够的测试用例,覆盖程序中所有的路径。    在软件测试中路径能够覆盖是很重要的的问题,因为程序如果要得到正确的结果,就必须保证程序总是沿着特定的路径顺序来执行。只有当程序中的每条路径都经受了检验时,才能使程序受到了全面的检验。

注意事项

通常在设计测试用例时应该根据代码模块的复杂度,选择覆盖方法。

推荐信息