白盒测试练习题 控制流图 + 独立路径

2022 软件测试大题【太原理工大学】 TYUT 太原理工大学,软件测试期末复习之设计题。 阅读详情
AI摘要

本文深入探讨了控制流图的概念及其在软件工程中的应用,详细解析了环形复杂度的计算方法,并通过实例展示了如何确定独立路径条数,最后提供了具体的输入数据与预期输出案例,帮助读者全面理解程序复杂度的评估。

        1.控制流图

 

        2.环形复杂度

                  V(G) = 6 - 5 + 2 = 3

 

        3.环形复杂度

                 独立路径条数:4

                      独立路径分别是:1 -> 2 -> 3  -> 4  -> 5

                                                   1  -> 3  -> 4  -> 5

                                                   1  -> 3  -> 5

                                                   1  -> 2  -> 3  -> 5

        4.输入数据和预期输出

                     1. 输入数据 : A=2 B=0 X=2   预期输出: A=2 B=0 X=2

                     2. 输入数据 : A=1 B=0 X=2   预期输出: A=1 B=0 X=3

                     3. 输入数据 : A=1 B=0 X=0   预期输出: A=1 B=0 X=0

                     4. 输入数据 : A=2 B=0 X=0   预期输出: A=2 B=0 X=1

                    

软件测试----------------- 控制流图 圈复杂度 独立路径 测试用例 最近在学软件测试,学到了画,控制流图 圈复杂度 独立路径 测试用例,这里,有些不理解,就网上查了下,发现好多老哥写错了,大佬写的甚至收费79。 我试着写写,如果有不足的,大家提提意见,别喷我。 题目如下: 1.针对 test 函数按照基本路径测试方法设计测试用例。 a)绘制出程序流程图对应的控制流图 b)计算出圈复杂度 c)写出 独立路径 d)写出相应的测试用例。(10 分) 1 int test(int i_count, int i_flag) { int i_temp = 0; wh 阅读详情

相关推荐

程序的流程控制说明及笔试习题

已知程序的流程控制可分为:顺序,选择控制,循环等。  1、顺序执行:从上往下,逐条来执行。 2、选择控制:当达到某种条件,执行特定的指令。 if  switch                                                     if(逻辑条 件表达式)                                                   ...

Sunflower___007的博客 1279

软件评测师必考题-控制流图

控制流图的基本知识 首先我们得清楚控制流图中的几个判断循环是如何表示的: 判断节点的嵌套 清楚了上面表示方法,你还是很难画出复杂的控制流图,而软考的控制流图往往是2个或多个判断节点嵌套在一起。其实只要把嵌套的节点想象成被嵌套节点的一个整体,就很好理解。这里给个例子,希望能帮助大家思考: 上图其实就是while循环里面嵌套了一个if语句,嵌套的情况太多,这里不一一赘述。 复合条件的表示 这里应该是很多人的难点和痛点,还是以2017年软考题目为例吧: 代码: Int DoString(char*string

hzx18022464374的博客 1万+

白盒测试---基本路径

控制流图是一种有向图,可以形式化为: G = (N, E, N_entry, N_exit) N是节点集,程序中的每个语句都对应图中的一个节点,有时一组顺序执行、不存在分支的语句也可以合并为用一个节点表示。因为环形复杂数为5,所以最多有5条基本路径 : path1:1—2—4—5—6—7 path2:1—2—3—4—5—6—7 path3:1—2—3—8—4—5—6—7 path4:1—2—3—8—4—5—9—7 path5:1—2—3—8—4—5—6—9—7。

m0_62410106的博客 7233

【大学生软件测试基础】白盒测试 - 控制流图 - 01

任务1、画出程序流程图; 任务2、画出控制流图; 任务3、根据程序环形复杂度的计算公式,求出程序路径集合中的独立路径数目; 任务4、根据环形复杂度的计算结果,源程序的基本路径集合中有多少条独立路径; 任务5、设计测试用例; 1、程序流程图 2、控制流图 3、根据程序环形复杂度的计算公式,求出程序路径集合中的独立路径数目; V(G) = P + 1 = 3+1 控制流程图环形复杂度为 4 4、根据环形复杂度的计算结果,源程序的基本路径集合中有多少条独立路径;...

aiwuff的博客 2万+

白盒测试之路径覆盖与基本路径覆盖

路径覆盖可以保证程序中的所有路径都被覆盖到,但对于包含多且复杂的判断语句、循环语句的程序来说,要覆盖每一条路径将会非常困难,需要花费极大的人力物力。路径覆盖可以使程序中的路径都被测试到,但是,要对程序中的路径做到完全覆盖经常是无法实现的。为了解决这一难题,我们需要在保证测试质量的前提下把测试的路径数量压缩到一定的范围内,基础路径覆盖法正好可以解决该问题。基本路径覆盖法是在程序控制流图的基础上,通过分析控制结构的圈复杂度,导出基本可执行的路径集合设计测试用例,运行被测程序,使程序的基本路径都得到覆盖。

haobabiu的博客 1万+

白盒测试实战:基于控制流图与基本路径法设计 5 个测试用例

本文详细介绍了白盒测试实战中基于控制流图与基本路径测试法的5个测试用例设计方法。通过可视化代码逻辑、计算环形复杂度及提取独立路径等技巧,帮助测试人员系统性地覆盖所有执行路径,有效解决路径爆炸和覆盖盲区问题,提升测试效率与质量。

weixin_34274029的博客 370

白盒测试练习题 控制流图 + 独立路径 2

1.控制流图 2.控制流图的环形复杂度 V(G) = 9 - 8 +2 = 3 3.独立路径 1. 4 -> 6 -> 7 -> 14 2. 4 -> 6 -> 9-> 10 -> 13 3. 4 -> 6 -> 9 -> 12 -> 13 ...

Geoooo的博客 1万+

PyTorch实战:从零构建CNN图像分类模型

卷积神经网络(CNN)作为计算机视觉的核心架构,通过局部连接和权值共享机制高效处理图像数据。其核心组件包括卷积层、池化层和全连接层,其中PyTorch的动态计算图特性为CNN实现提供了灵活的开发环境。在工程实践中,使用CIFAR-10这类标准数据集可以快速验证模型性能,而数据增强和批归一化等技术能有效提升模型泛化能力。通过PyTorch实现CNN不仅能够掌握图像分类的基本原理,还能为后续迁移学习和复杂视觉任务打下基础,特别是在结合Adam优化器和学习率调度策略后,模型收敛速度和准确率都能得到显著提升。

weixin_42405592的博客 318

白盒测试--控制流测试(白盒测试,逻辑覆盖,路径测试(基路径测试、循环测试),控制流图)

文章目录白盒测试概念白盒测试方法--控制流测试语句覆盖判定覆盖(分支覆盖)条件覆盖判定-条件覆盖条件组合覆盖路径覆盖路径测试基路径测试循环测试控制流图基本控制流图复合逻辑下的控制流图图矩阵环形复杂度 白盒测试概念 又叫结构测试,逻辑驱动测试。把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试 。 白盒测试法考虑的是测试用例对程序内部...

xiadanying的博客 2万+

奔图M6700-M6800-M7100-M7200 系列打印机拆解教程?

奔图M6700-M6800-M7100-M7200 系列打印机拆解教程?

m0_58098052的博客 1591

[深度学习] 从 originbot 到 origincar

原来,OriginBot的摄像头是MIPI模式,而OriginCar的摄像头是USB摄像头,也就是imageWidth 是0~959,超过了范围640。origincar在执行以下命令部署模型时。

chdlr的博客 2385

软件测试—第六章白盒测试基本路径测试法

一,基本路径法 1,为什么使用基本路径法 一是降低了测试用例设计的难度。只要搞清了各种流程,就可以设计出高质量的测试用例来,而不用太多测试方面的经验。 二是在测试时间较紧的情况下,可以有的放矢的选择测试用例,而不用完全根据经验来取舍。 2,什么是基本路径法 从一个程序的入口开始,执行所经历的各个语句的完整过程。在不能保证做到所有路径覆盖的前提下,需要对路径数量进行压缩,如果可以保证程序中...

XU_MAN_的博客 2万+

告别PXE!用iPXE在CentOS 8.5上搭建一个能同时装Win11和Linux的万能网络启动盘

本文详细介绍了如何在CentOS 8.5上使用iPXE搭建支持Windows 11和Linux双系统部署的全能网络启动盘。通过对比传统PXE的局限性,展示了iPXE在HTTP协议支持、多架构适配和智能脚本方面的优势,提供从环境准备、服务配置到智能菜单开发的完整解决方案,显著提升系统部署效率。

weixin_29278805的博客 265

白盒测试——基本路径测试法

本次实验旨在通过白盒测试中的基本路径测试法,掌握其基本概念并应用于具体问题。实验内容包括绘制程序控制流图、计算环路复杂度,并设计测试用例以覆盖所有独立路径。以计算两个整数最大公约数的程序为例,实验步骤包括:1) 绘制控制流图并计算环路复杂度为3;2) 设计三个测试用例分别覆盖三条独立路径。测试用例1和2分别验证x>y和x<=y的情况,测试用例3验证不进入循环的情况。通过实验,学生能够理解基本路径测试法的原理,并提升具体问题分析能力。

枫原万叶的博客 1424

Windows 11 部署 Docker Desktop:从 WSL 报错到服务配置的完整排障实录

本文详细记录了在Windows 11上部署Docker Desktop时遇到的WSL报错问题及完整解决方案。从Hyper-V配置、BIOS设置到系统服务检查,提供了一系列实用命令和排查步骤,帮助开发者快速解决'Unexpecter WSL error'等常见问题,实现Docker与WSL2的稳定运行。

weixin_30687051的博客 120

服务器冗余电源维修图纸,冗余热备份电源的电路图设计

在设计某高可靠性计算机系统时,要求其配套电源采取冗余设计。一般来说,可以采取的方案有容量冗余、冗余冷备份方式、并联均流的N+1备份方式、冗余热备份方式。容量冗余是指电源的最大负载能力大于实际负载,也就是“大马拉小车”,其缺点是不利于提高电源的效率,而且对提高电源的可靠性意义不大。冗余冷备份方式是指电源由两个或多个功能相同的单元模块组成,电源启动后由其中一个单元模块向设备供电,当工作单元发生故障时,...

weixin_39671509的博客 1995

白盒测试之基本路径测试法

基本路径测试法 基本路径测试是一种白盒测试方法,它在程序控制图的基础上,通过分析控制构造的环行复杂性,导出基本可执行路径集合,从而设计测试用例的方法。设计出的测试用例要保证在测试中程序的每一个可执行语句至少执行一次。 工具/原料 图形矩阵 控制流图 方法/步骤: 1、画出控制流图 使用控制流图制作方法对程序流程图进行简化,以突出的表示程序控制流的结构。 对于复合条件,则可将其分解为多个单个条件,并映射成控制流图。 2、确定程序基本集的独立路径数量,再确保所有语句至少执行一次的测试数量的上界。 需要注

weixin_44772874的博客 8287

告别单一帧:在CFD-POST中完整加载Fluent瞬态计算结果的实战指南

本文详细介绍了在CFD-POST中完整加载Fluent瞬态计算结果的实战指南,解决工程师常见的只能看到最后一帧数据的问题。通过Fluent端的正确设置和CFD-POST端的完整加载技巧,帮助用户高效处理瞬态数据,提升后处理效率。文章还提供了常见问题排查、性能优化和高级后处理技巧,适用于Workbench环境下的流体流动分析。

weixin_29284657的博客 537

白盒测试---基本路径覆盖法

转载自:https://blog.youkuaiyun.com/xieminyao123/article/details/79133449    白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、Z路径覆盖、程序变异。   其中运用最为...

如是说的博客 2万+

【Clickhouse】Cannot allocate block number in Zookeeper write prefix view location

我有一个问题,我CK集群跑批的时候,replicated表变成只读的了下面是CK的报错和当时ZK的日志。下面是zk报错开始 我认为是写入的时候,压力太大,ZK扛不住了,就按照博客里的建议优化了ZK的参数,现在偶尔还会只读,zk报错都是图里的那种clickhouse的集群是5分片的集群,数据量比较大。每小时批量一次,每次2-10W条数据,字段的话,不到200个字段,使用的 jdbc sink写入。

九师兄 836

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

白盒测试的测试用例设计方法

一 白盒测试的主要技术 对简单的程序流程而言,确定程序的路径有多少条可通过:语句覆盖(覆盖率100%);分支(判定)覆盖(覆盖率85%);条件覆盖;分支-条件覆盖;条件组合覆盖;路径覆盖(覆盖率80%)来确定,这也是白盒测试的主要技术。 1.1语句覆盖(覆盖率100%) 使程序中每个语句至少执行一次 1.2分支(判定)覆盖(覆盖率85%) 使每个判定的真假分支都至少执行一次 1.3条件...

测试开发之路BeeTester 7502

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

白盒测试——基本路径测试

基本路径测试是将程序流程图转化为控制流图,通过分析控制结构的环路复杂性,进而找出路径的基本独立集,最终导出测试用例。 基本独立集: 从基本独立集导出的测试用例保证对程序中的每一条语句至少执行一次。 控制流图: 定义: 百度百科: 是一个过程或程序的抽象表现,是用在编译器中的一个抽象数据结构,由编译器在内部维护,代表了一个程序执行过程中会遍历到的所有路径。它用图的形式表示一个过程内所有基本块执行的可能流向, 也能反映一个过程的实时执行过程。 个人理解: 控制流图是顶点和有向...

qq_63635872的博客 8928

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

白盒测试——基本路径法

白盒测试的测试方法:   代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、Z路径覆盖、程序变异。   我们这次主要了解一下路径测试法:   基本路径测试法是在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法。      在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本...

LB2012153055的博客 1530

白盒测试之路径覆盖

白盒测试之路径覆盖 路径覆盖 路径覆盖的含义 选取足够多的测试数据,使程序的每条可能路径都至少执行一次(如果程序图中有环,则要求每个环至少经过一次)。 链 连续的边。也被称作一条路径 圈复杂度: 圈复杂度(Cyclomatic complexity)是一种代码复杂度的衡量标准,在1976年由Thomas J. McCabe, Sr. 提出。 在软件测试的概念里,圈复杂度用来衡量一个模块判定结构的...

qq_42744046的博客 2万+

白盒测试-基本路径覆盖

​ 路径覆盖可以使程序中的路径都被测试到,但是,要对程序中的路径做到完全覆盖经常是无法实现的。为了解决这一难题,我们需要在保证测试质量的前提下把测试的路径数量压缩到一定的范围内​ 基本路径覆盖法是在程序控制流图的基础上,通过分析控制结构的圈复杂度,导出基本可执行的路径集合设计测试用例,运行被测程序,使程序的基本路径都得到覆盖。基本路径覆盖法把测试时需要覆盖的路径压缩到一定的范围内,使程序中的每一个可执行语句都至少执行一次,程序中的循环体最多只执行一次。

m0_75269526的博客 1822
上一篇: 白盒测试测试冒泡排序法
下一篇: 白盒测试练习题 控制流图 + 独立路径 2
Geoooo
博客等级 码龄9年 41粉丝 39原创
评论 11
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值