白盒测试:(结构性测试,逻辑驱动测试)

基于被测程序的源代码,而非基于定义
支持严格定义、数据分析、精确度量

方法:

  • 控制流/路径测试
  • 数据流测试
  • 其他:程序插装、域测试法、符号测试、Z路径覆盖法、程序变异

程序图

有向图

  • 结点:语句片段
  • 边:控制流

DD-路径

DD-路径是程序图中的一条链,使得:

  • 情况1:由一个节点组成,内度=0
  • 情况2:由一个节点组成,外度=0
  • 情况3:由一个节点组成,内度≥2或外度≥2
  • 情况4:由一个节点组成,内度=1并且外度=1
  • 情况5:长度≥1的最大链

测试覆盖指标

  • 语句覆盖:每个可执行语句至少执行一次

  • 分支覆盖(判定覆盖):每个判定至少都获得一次“真”值和“假”值.

  • 条件覆盖:每个判定中每个条件的可能值至少满足一次.

  • 条件判定覆盖:每个判定中的每个条件的所有可能(真/假)至少出现一次并且每个判定本身的结果(真/假)也至少出现一次.

  • 条件组合覆盖:每个判定中条件的各种可能组合都至少出现一次,显然满足条件组合覆盖的测试用例一定满足“(判定)分支覆盖”、“分支条件覆盖”和“条件判定覆盖”.

  • 路径覆盖:覆盖程序中所有可能的路径.

软件测试-白盒测试方法相关推荐

  1. 软件测试——白盒测试方法

    01. 白盒测试基本概念 白盒测试也称为结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试.它根据程序的控制结构设计测试用例,主要用于软件或程序验证.白盒测试法检查程序内部逻辑结构,对所有 ...

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

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

  3. 【软件测试】白盒测试方法与黑盒测试方法的区别

    软件测试方法一般分为两种:白盒测试与黑盒测试.其中,白盒测试又称为结构测试.逻辑驱动测试或基于程序本身的测试,着重于程序的内部结构及算法,通常不关心功能与性能指标.黑盒测试又被称为功能测试.数据驱动测 ...

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

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

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

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

  6. 软件测试常见概念(软件生命周期、软件开发模型、软件质量模型、软件缺陷管理、软件测试概述、软件测试分类、软件测试与软件开发、软件测试原则、黑盒测试方法、白盒测试方法、性能测试)

    文章目录 1. 软件概述 1.1 软件生命周期 1.2 软件开发模型 1.2.1 瀑布模型 1.2.2 快速原型模型 1.2.3 迭代模型(增量模型或演化模型) 1.2.4 螺旋模型 1.2.5 敏捷 ...

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

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

  8. 软件测试基本方法(二)之白盒测试

    白盒测试 概念:按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作. 分类:白盒测试是基于覆盖的测试,尽可能覆盖 ...

  9. 白盒测试工具_别再头疼工作效率低!这些超实用的黑盒、白盒测试方法你都用上了吗?...

    在软件测试工作中,为充分利用现有的时间和资源条件,提高测试效率和测试充分性,当前有多种方法辅助测试人员完成测试工作,推进项目进度,其中最普遍的莫过于白盒测试和黑盒测试,白盒测试和黑盒测试的概念和常用方 ...

最新文章

  1. vue----常用实例方法--$mount(),$destroy(),$watch(),$forceUpdate()
  2. 【ElasticSearch】Es 源码之 NamedWriteableRegistry 源码解读
  3. 深度linux添加xp,Linux和Windos XP下向路由表添加路由
  4. 如何用报表解决销售工作衡量问题
  5. python和前端(三)JS的激情
  6. linux中grep命令 菜鸟教程,Linux 常用命令学习 | 菜鸟教程
  7. 输出0~1000内的质数 C语言
  8. 面对局域网用户滥用网络执法官,p2p终结者等网管软件的破解方法
  9. 为kubernetes(k8s)单独配置kubectl工具
  10. 拜腾“难”飞:全球化饮鸩止渴?
  11. PTA实验4-1-2 求奇数和 (15分) 本题要求计算给定的一系列正整数中奇数的和。
  12. 阿里云API请求签名失败的解决办法
  13. 和能力匹配的目标才是战略
  14. 自主练习:BBS电子布告栏
  15. 【屏蔽百度热搜】 忍无可忍无需再忍。。。。终于不用受到百度的恶心了
  16. 【了解基本进位制】进制使用说明与学习
  17. ArcMap进行专题地图编制
  18. 【转】以太坊上的分片
  19. 1.CCNP闫辉视频笔记RIP
  20. 人脸识别很危险!美斯坦福大学攻破,千万别拿来当网络身份认证

热门文章

  1. 在Linux系统中安装eclipse
  2. python gui 显示表格_python GUI库图形界面开发之PyQt5表格控件QTableView详细使用方法与实例...
  3. 2022春招各大厂高频面试题汇总
  4. 互动媒体技术——Processing创意绘画系统
  5. php header 302 move,302 Moved Temporarily和302 Found有什么区别?
  6. [电池]Android 9.0 电池未充电与充电字符串提示信息
  7. java电商项目源码_电子商务系统+java+web+完整项目+包含源码和数据库Java实用源码...
  8. Java反射机制的基本认识
  9. 2188万:2022年度5G+多网融合应急调度平台项目
  10. 百度云服务器网络检查,百度推出网站安全监测平台,为服务器提供安全漏洞扫描...