白盒测试方法


逻辑覆盖法白盒测试最常用的白盒测试方法,它包括语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖5种。

语句覆盖
语句覆盖(Statement Coverage)又称行覆盖、段覆盖、基本块覆盖,它是最常见的覆盖方式。语句覆盖的目的是测试程序中的代码是否被执行,它只测试代码中的执行语句,这里的执行语句不包括头文件、注释、空行等。语句覆盖在多分支的程序中,只能覆盖某一条路径,使得该路径中的每一个语句至少被执行一次,但不会考虑各种分支组合情况。

判定覆盖
判定覆盖(Decision Coverage)又称为分支覆盖,其原则是设计足够多的测试用例,在测试过程中保证每个判定至少有一次为真值,有一次为假值。判定覆盖的作用是使真假分支均被执行,虽然判定覆盖比语句覆盖测试能力强,但仍然具有和语句覆盖一样的单一性。

条件覆盖
条件覆盖(Condition Coverage)指的是设计足够多的测试用例,使判定语句中的每个逻辑条件取真值与取假值至少出现一次,例如,对于判定语句IF(a>1 ORc<0)中存在a>1、c<0 2个逻辑条件,设计条件覆盖测试用例时,要保证a>1、c<0的“真”“假”值至少出现一次。

判定-条件覆盖
判定-条件覆盖(Condition/Decision Coverage)要求设计足够多的测试用例,使得判定语句中所有条件的可能取值至少出现一次,同时,所有判定语句的可能结果也至少出现一次。例如,对于判定语句IF(a>1 AND c<1),该判定语句有a>1、c<1两个条件,则在设计测试用例时,要保证a>1、c<1两个条件取“真”“假”值至少一次,同时,判定语句IF(a>1 AND c<1)取“真”“假”值也至少出现一次。这就是判定-条件覆盖,它弥补了判定覆盖和条件覆盖的不足之处。

条件组合覆盖
条件组合(Multiple Condition Coverage)指的是设计足够多的测试用例,使判定语句中每个条件的所有可能至少出现一次,并且每个判定语句本身的判定结果也至少出现一次,它与判定-条件覆盖的差别是,条件组合覆盖不是简单地要求每个条件都出现“真”与“假”两种结果,而是要求让这些结果的所有可能组合都至少出现一次。

三角形逻辑覆盖问题
根据三角形3条边的关系可将三角形分为4种类型:不构成三角形、一般三角形、等腰三角形、等边三角形。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
测试方法是基于代码内部结构的测试方法,设计测试用例需要考虑代码的逻辑结构、数据结构和代码执行路径等因素。以下是一些常用的测试方法和设计测试用例的步骤: 1. 代码覆盖测试:通过测试用例来检查代码是否覆盖了所有的执行路径和条件分支。设计测试用例的步骤包括: - 识别代码中的条件分支和循环结构。 - 设计测试用例满足每个分支和循环结构的所有可能情况。 - 确保测试用例能够覆盖所有的执行路径,包括正常情况、异常情况和边界情况。 2. 数据流测试:通过测试用例来检查代码中的数据流是否正确。设计测试用例的步骤包括: - 识别代码中的变量和数据结构。 - 设计测试用例,测试数据在代码中的传递和转换过程中是否正确。 - 确保测试用例能够覆盖所有的数据流路径,包括正常情况、异常情况和边界情况。 3. 边界值测试:通过测试用例来检查代码在处理边界值时是否正确。设计测试用例的步骤包括: - 识别代码中的边界值,例如最大值、最小值等。 - 设计测试用例,测试边界值时代码是否能够正确处理。 - 确保测试用例能够覆盖所有的边界值情况,包括正常情况、异常情况和非法情况。 4. 异常处理测试:通过测试用例来检查代码在处理异常时是否正确。设计测试用例的步骤包括: - 识别代码中可能出现的异常情况。 - 设计测试用例,测试代码在处理异常情况时是否能够正确处理。 - 确保测试用例能够覆盖所有可能出现的异常情况。 以上是一些常用的测试方法和设计测试用例的步骤,测试人员可以根据具体的项目和代码结构选择合适的测试方法和设计测试用例。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值