【软件工程】白盒测试:基本路径测试

2023-11-16

基本路径测试是在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行的路径集合,从而设计测试用例的方法。

步骤(以一段代码为例):

(1)画出控制流图

void sort(int num,int t)

1. {

2.  int x=0;

3.  int y=0;

4.  while(num-->0)

5. {

6.     if(t==0)

7.         {x=y+1;break;}

8.     else{

9.          if(t==1)

10.            x=y+10;

11.         else

12.            x=y+20;}

13.   }

14.}

画出控制流图: 

 计算环复杂度:

V(G)=E-N+2=13-11+2=4

V(G)=P+1=3+1=4 

E为边数,N为点数

P为分支节点的个数

基本测试路径为:

(1)1-2-3-4-14

(2)1-2-3-4-6-9-10-13-4-14

(3)1-2-3-4-6-7-14

(4)1-2-3-4-6-9-12-13-4-14

导出测试用例:

测试编号 覆盖路径 输入数据 输出数据
1 (1) num=-1 x=0,y=0

2

(2) num=1,t=0 x=1,y=0
3 (3) num=1,t=1 x=10,y=0
4 (4) num=1,t=2  x=20,y=0

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【软件工程】白盒测试:基本路径测试 的相关文章

随机推荐

  • Android sqlite常见sql语句

    创建一个测试表man select from man 查询man表所有信息 select from man where name like 四 删除操作 delete from man where name lucy2 部分字段查询 sel
  • java.sql.SQLException: The user specified as a definer (‘combined‘@‘%‘) does not exist

    java sql SQLException The user specified as a definer combined does not exist 今天我把公司的项目拷回来处理一些遗留的问题 文明的我 爆了粗口TMD 罪过罪过 话不
  • React中高阶组件、Render props、hooks

    这三者都是react中解决代码复用的主要方式 1 HOC 在官方解释中 高阶组件 HOC 是 React 中复用组件逻辑的一种高级技巧 HOC自身不是 React API 的一部分 它是一种基于 React 的组合特性而形成的一种设计模式
  • springCloud整合 Hystrix熔断器(配置)

    springCloud整合 Hystrix熔断器 文章目录 springCloud整合 Hystrix熔断器 前言 一 添加Hystrix依赖 二 properties文件开启熔断器 三 为调用另一个服务的接口添加实现类 前言 在分布式环境
  • Qt Installer Framework使用教程:

    步骤一 下载并安装Qt Installer Framework工具 http download qt io official releases qt installer framework 将安装目录添加到环境变量 如安装D盘时D Qt Q
  • 狂神说 MyBatis 笔记

    这里写目录标题 Mybatis 1 简介 1 1 什么是MyBaits 1 2 持久话 1 3 持久层 1 4 为什么需要Mybatis 2 第一个Mybatis程序 2 1 搭建环境 2 2 创建一个模块 2 3 编写代码 2 4 测试
  • 二分插入排序(c语言)

    一 什么是二分插入排序 二分法插入排序 简称二分排序 是在插入第i个元素时 对前面的0 i 1元素进行折半 先跟他们中间的那个元素比 如果小 则对前半再进行折半 否则对后半进行折半 直到left
  • <02-01-01> Spring IoC容器与Bean介绍(Introduction to the Spring IoC Container and Beans)

    上一篇 02 01 控制反转容器 The IoC Container 本章介绍了Spring 框架对控制反转 Inversion of Control IoC 设计原则的实现 IoC也被称为依赖注入 Dependency Injection
  • SpringBoot配置多个mysql数据源

    当我们在进行数据库分库分表操作是可能会需要到多个数据库 那么我们就需要对多个数据库的数据源进行配置 整理一下 今天在SpringBoot框架下多个数据源的配置过程 两个为例 1 配置数据库信息 在yml配置文件中配置需要的数据库信息 spr
  • 分布式理论基础:CAP和BASE

    CAP定理 分区 在分布式系统中 不同的节点分布在不同的子网络中 由于一些特殊的原因 这些子节点之间出现了网络不通的状态 但他们的内部子网络是正常的 从而导致了整个系统的环境被切分成了若干个孤立的区域 这就是分区 CAP定理 CAP原则又称
  • opencv-python中 boundingRect(cnt)以及cv2.rectangle用法

    转自 http blog csdn net zhangxb35 article details 47275277 矩形边框 Bounding Rectangle 是说 用一个最小的矩形 把找到的形状包起来 还有一个带旋转的矩形 面积会更小
  • 实用常识

    WolframAlpha是开发计算数学应用软件的沃尔夫勒姆 Wolfram 研究公司基于科学计算软件Mathematica开发出的新一代的搜索引擎 试图挑战Google搜索引擎的地位 能根据问题直接给出标准化答案的网站 比如输入一种材料名称
  • iOS开发 多线程的高级应用-信号量semaphore

    在iOS开发的道路上 多线程的重要性不言而喻 大部分我们都停留在基础的使用上面 缺乏高级应用 缺乏提升 是因为我们面对他太少 复杂的事情重复做 复杂的事务基础化 差距就是这样拉开了 言归正传 今天讲讲GCD的高级应用之信号量篇 一 信号量的
  • CMake使用小结

    CMake使用小结 指定本地库的位置 set Qt5 DIR path list APPEND CMAKE PREFIX PATH Qt5 DIR 设置编译输出的路径 set CMAKE ARCHIVE OUTPUT DIRECTORY D
  • 一阶低通滤波

    一阶低通滤波 前言 在使用单片机开发中 常常会用到的外设包括ADC采样 而采样必然会伴随这随机干扰引起的毛刺噪声 对于需要捕捉采样值突变的系统来说尤其需要减小毛刺突变的影响 从硬件电路和软件算法上都能一定程度的减少噪声达到滤波的目的 本文主
  • VSCode配置文件“.vscode/c_cpp_properties.json”不断被覆盖的原因及解决方法

    一 问题现象 昨天 我在用VSCode写一个小算法程序 使用CMake配置文件 CMakeLists txt 进行工程管理 算法测试倒还顺利 但VSCode出现了一个令人恼火的问题 每次重新打开VSCode后 配置文件 vscode c c
  • android 反编译

    使用工具 CSDN上下载地址 apktool 资源文件获取 下载 dex2jar 源码文件获取 下载 jd gui 源码查看 下载 Android反编译整合工具包 最新 下载 官方最新版本下载地址 apktool google code d
  • finetune

    finetune的含义是获取预训练好的网络的部分结构和权重 与自己新增的网络部分一起训练 下面介绍几种finetune的方法 完整代码 https github com toyow learn tensorflow tree master
  • 【Web前端】一文带你吃透HTML(完整篇)

    前端学习路线小总结 基础入门 HTML CSS JavaScript 三大主流框架 VUE REACT Angular 深入学习 小程序 Node jQuery TypeScript 前端工程化 开始前端之旅吧 一 HTML简介 1 什么是
  • 【软件工程】白盒测试:基本路径测试

    基本路径测试是在程序控制流图的基础上 通过分析控制构造的环路复杂性 导出基本可执行的路径集合 从而设计测试用例的方法 步骤 以一段代码为例 1 画出控制流图 void sort int num int t 1 2 int x 0 3 int