• 白盒测试 --覆盖方法


    六种覆盖标准发现错误的能力呈由弱到强的变化:语句覆盖<判定覆盖<条件覆盖<语句/判定覆盖<条件组合覆盖<路径覆盖

    白盒测试定义:白盒测试又称为结构测试、透明盒测试、逻辑驱动测试和基于代码的测试。

    白盒测试是一种测试用例设计方法,白盒指的是程序的内部结构和运作机制是可见的。

    白盒测试的目的:通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试;在程序不同地方设置检查点,检查程序的状态,以确定实际运行状态与预期状态 是否一致。

    白盒测试的方法:静态方法和动态方法两类 

      静态分析:一种不执行程序而进行测试的技术,静态分析的主要目的是检查软件的表示和描述是否一致,没有冲突或者没有歧义。

      动态分析:当软件系统在模拟或者真实的环境中执行前、执行中和执行后,对其行为分析。它显示了一个系统在检查状态下是否正确,在动态分析技术中,最重要的 技术是路径和分支测试。

    覆盖测试方法属于 动态分析方法。

    (1)语句覆盖

      使程序中每个可执行语句都能执行一遍的测试用例。

    (2)判定覆盖/分支覆盖

      对于判断语句,在设计用例的时候,要设计判断语句结果为TRUE和FALSE两种情况(针对出现两种结果设计用例)

    (3)条件覆盖

      设计用例时,针对判断语句里面每个条件表达式true和false各取值一次,不考虑判断语句的结果,可能都为 true或者都为false(不考虑结果,只针对条件,将每种条件都取到)

    (4)判定条件覆盖/分支条件覆盖

      设计测试用例时,使得判断语句中每个条件表达式的所有可能结果至少出现一次,每个判断语句本身所有可能结果也 至少出现一遍(结合判定覆盖和条件覆盖,同时考虑各种判定和条件)

    (5)条件组合覆盖

      设计测试用例时,是的每个判断语句中条件结果的所有可能组合至少出现一次 ,全部组合即可。

    (6)路径覆盖

      设计测试用例时,覆盖程序中所有可能的执行路径,不必细致到看每一个式子的判断结果。

  • 相关阅读:
    spring 环绕通知 ProceedingJoinPoint 执行proceed方法的作用是什么
    SpringMVC之RequestContextHolder分析
    MySQL中索引不会被用到的情况
    使用Stream快速对List进行一些操作
    Vue中this.$refs[name].resetFields();的使用
    好看的字体
    转,javascript中call()、apply()、bind()的用法终于理解
    vue中的$props
    手机端页面自适应解决方案-rem布局
    查看项目里特定npm包的版本号
  • 原文地址:https://www.cnblogs.com/gujunjie-study-time/p/14010495.html
Copyright © 2020-2023  润新知