学习图覆盖准则需要了解一些其他基本概念。

可达:从某一个结点开始存在一条路径可达子图。
可达包括两个方面:语法可达和语义可达。
语法可达:通过语法构建某种子图结构当中,存在一条路径可达到这个子图。
语义可达:指在实际的程序当中存在这么一个测试,可到到这个子图。

由可达的概念可以拓展到另外一个概念:覆盖

覆盖:指存在一条测试路径p可以覆盖到某个顶点v,即这个顶点v恰好在这个路径p里面

覆盖有:边覆盖,路径覆盖。
边覆盖:指存在一条测试路径p可以覆盖到某个边,这个边存在于这个p中
路径覆盖:测试路径p可以覆盖到子路径p’,即一个子路径p’恰好存在路径p中。

然后就是图覆盖了。图覆盖有结构覆盖、数据流覆盖。
在概念需要注意结构覆盖和数据流覆盖的区别,后面的学习记录会详细介绍这两者。
结构覆盖我们只关注所牵扯图的点和边。而数据流覆盖我们需要关注图中点上的变量的操作是否正确。

测试准则:
测试需求(TR):用来描述测试路径性质的一些定义。
测试准则(TC):指用来描述测试需求的一些规则。
测试准则TC派生出一个测试需求集TR,现有一个测试用例集T,满足上述的测试准则。
这其实就是指这个测试需求TR里面的每一个测试需求tr,都可以被这个大的测试用例集T中的某一个测试用例t所满足。

[5]白盒测试方法2—图覆盖准则相关推荐

  1. 白盒测试方法之逻辑覆盖

    单元测试基本 是指对软件中的最小可测试单元进行检查和验证.单元测试是软件测试中最基础的测试,集成测试.功能测试和系统测试都建立在单元测试之上.单元测试的对象是构成软件产品或系统的最小的独立单元,如封装 ...

  2. 白盒测试方法|白盒测试的六种方法比较分析

    白盒测试的六种方法比较分析 一.摘要 白盒测试是测试人员常用的一种测试方法,越来越受到测试工程师的重视.白盒测试并不是简单的按照代码测试用例而走,需要根据不同的测试需求,结合不同的测试对象,使用适合的 ...

  3. 详解软件测试中白盒测试基本概念及四种白盒测试方法以及六种逻辑覆盖法(语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖)

    在这篇文章中,我们将讲解白盒测试的基本概念,以及四大常用的白盒测试方法. 一.白盒测试基本概念 1.白盒测试的定义 白盒测试又称为结构测试或逻辑驱动测试,它是把测试对象看成一个透明的盒子,它允许测试人 ...

  4. 白盒测试-覆盖测试(六种覆盖方法)

    白盒测试-覆盖测试(六种覆盖方法) 测试覆盖率 测试覆盖率:用于确定测试所执行到的覆盖项的百分比.其中的覆盖项是指作为测试基础的一个入口或属性,比如语句.分支.条件等.测试覆盖率可以表示出测试的充分性 ...

  5. 白盒测试中的六种覆盖方法及案例分析

    语句覆盖是指选择足够的测试用例,使得运行这些测试用例时,被测程序的每一个语句至少执行一次,其覆盖标准无法发现判定中逻辑运算的错误: 判定覆盖<又叫分支覆盖率>是指选择足够的测试用例,使得运 ...

  6. 白盒测试之逻辑覆盖准则

    白盒测试之逻辑覆盖准则 逻辑覆盖准则 需要测试的逻辑结构图(源程序) 语句覆盖准则 判定覆盖准则 条件覆盖准则 判定/条件覆盖准则 多重条件覆盖准则 逻辑覆盖准则 白盒测试关注的目标是测试用例执行的程 ...

  7. 『软件测试4』耗子尾汁!2021年了,你还不知道这4种白盒测试方法吗?

    软件测试--详解白盒测试基本概念,四种白盒测试方法 一.白盒测试基本概念 1.白盒测试的定义 2.白盒测试的测试对象 3.白盒测试的原则 4.白盒测试的分类 二.静态白盒测试 1.代码检查法 (1)代 ...

  8. 「软件测试4」一文详解四大典型的白盒测试方法

    软件测试--详解白盒测试基本概念,四种白盒测试方法 这是我参与更文挑战的第3天,活动详情查看:更文挑战 在上一篇文章中,我们讲到了黑盒测试.黑盒测试相较于白盒测试来说比较简单,不需要了解程序内部的代码 ...

  9. 软件测试基础理论体系学习6-黑盒测试方法白盒测试方法简述

    13 白盒测试方法 1 黑盒测试 1.1 黑盒测试概述 1.2 黑盒测试的使用场景 1.3 "黑盒"的两种基本方法 1.4 黑盒测试的优缺点 1.4.1 优点 1.4.2 缺点 1 ...

最新文章

  1. python多线程代码_Python多线程代码求改错
  2. gentoo下gnome的抓图功能
  3. ios 常用数学函数
  4. 二分图带权最大匹配费用流_一文掌握阻抗匹配
  5. 通俗易懂的讲解堆排序(含Gif图)
  6. yum出错Error: Cannot find a valid baseurl for repo: base
  7. Qt文档阅读笔记-Broadcast Sender Example与Broadcast Receiver Example解析
  8. python是动态语言
  9. 北京 || Java 技术、生活、工作交流社区
  10. Rust : async、await 初探
  11. native工具备份mysql数据库_Navicat Premium实现mysql数据库备份/还原
  12. 企业微信网页应用开发 - 权限验证
  13. 什么是OSINT?以及如何使用开源网络情报工具?
  14. python错题集(1)
  15. 基因编辑技术在农业中的应用综述
  16. 用了这么多年百度搜索, 今天才发现加上双引号搜索结果这么准
  17. 拦截QT关闭窗口的CloseEvent()解析
  18. 美团-移动端UI一致性解决方案
  19. jQuery 从零开始学习 (二) 选择器
  20. 【EXP】函数使用技巧

热门文章

  1. 基于机智云物联网平台的智能远程植物养护装置设计与实现
  2. 解决CSS多行文本溢出隐藏纯字母失效
  3. 2020-12-28 德勤Java实习 推了 贼后悔
  4. jQuery-w3school(2020.2.16)【二、jQuery教程】
  5. 计算机视觉之图像特征——曲率curvature
  6. Python3简单实现杨辉三角
  7. 汽车智能门锁系统全国产化电子元件推荐方案
  8. 回归分析(三)—— 多元线性回归
  9. 麦肯锡报告:2030年近1亿中国人或面临职业转换,全球将有8亿人被机器人取代!
  10. 硅谷VS华尔街:越来越像了吗?