首页
登录
从业资格
逻辑覆盖法是设计白盒测试用例的主要方法之一,它通过对程序逻辑结构的遍历实现程序的
逻辑覆盖法是设计白盒测试用例的主要方法之一,它通过对程序逻辑结构的遍历实现程序的
题库
2022-08-02
59
问题
逻辑覆盖法是设计白盒测试用例的主要方法之一,它通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。gz_open (const char *mode){ char * p = (char*)mode; //1 char fmode[4]; char * m = fmode; char smode = ’\0’; char level = ’\0’; int strategy = 0; do { if (*p == ’r’) //2 smode = ’r’; //3 if (*p >= ’0’&& *p <= ’9’) { //4,5 level = *p - ’0’; //6 } else if (*p == ’f’) { //7 strategy = 1; //8 } else { //9 *m++ = *p; } *p++; //10 }while (m != fmode + sizeof(fmode)); //11} //12【问题1】请给出满足100%DC(判定覆盖)所需的逻辑条件。【问题2】请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。【问题3】假设函数gz_open的参数mode是由26个小写字母’a’-’z’、数字’0’-’9’以及空格组成的字符串,请使用基本路径测试法构造1个测试用例,使之覆盖所有基本路径。
选项
答案
解析
本题主要考查的是逻辑覆盖的相关内容。【问题1】判定覆盖即分支覆盖,对于每一个判定,都至少要取得一次真值和假值。在本题中,我们从程序中不难找出所有的逻辑判断语句,很显然在题目给出的程序中,包含的逻辑判断语句有:*p == ’r’、*p >= ’0’&& *p <= ’9’、*p == ’f’及m != fmode + sizeof(fmode)。那么首先是判定*p == ’r’,应分别设置其为真与为假的情况;然后是*p >= ’0’&& *p <= ’9’,设置其为真,然后设置其为假,在为假的情况下,出现判定*p == ’f’,分别设计其为真和假;最后是m != fmode + sizeof(fmode),分别设置真、假即可。【问题2】根据题目程序的意思,我们可以知道其控制流图如下所示:
而它的V(G)=6。【问题3】本问题考查白盒测试用例设计方法中的基本路径法,涉及到的知识点包括:根据控制流程图和环路复杂度设计测试用例。注意环路复杂度只是测试用例数的上限,本题中程序的环路复杂度为6 ,因此测试用例上限为6,但本题程序比较特殊,只需要一个测试用例即可实现。例如构造一个6个字符构成的字符串(设为x,y,z,u,v,w6个字符),使得每个字符覆盖一条基本路径即可。其中x=’r’,y=’f’,z属于[’0’ - ’9’],u<’0’,v>’9’并且V!=‘f’,w任意,这6个字符可以任意排列
转载请注明原文地址:https://tihaiku.com/congyezige/2417722.html
本试题收录于:
中级 软件评测师题库软件水平考试初中高级分类
中级 软件评测师
软件水平考试初中高级
相关试题推荐
敏捷软件开发方法的特点不包括()。A.较之于过程和工具,更注重人及其交互
在面向对象开发方法中,()机制模拟现实世界中的遗传现象,实现类之间共享数据和
当二叉树的结构形如一()时,其后序遍历序列和中序遍历序列相同。
对高级语言程序进行翻译时,源程序中的变量不可能映射到()。A.内存代码区的存
在程序运行过程中,()时可能需要进行整型数据与浮点型数据之间的强制类型转换
一个公司面临的网络攻击来自多方,一般采用安装防火墙的方法防范()。A.外部攻
程序设计的一般原则不包括()。A.自顶向下 B.先设计外部接口,再进行内部
采用黑盒技术设计测试用例的方法包括()。A.对分查找 B.逻辑覆盖 C.
采用统一建模语言(UML)进行面向对象建模时,()用于描述系统的静态结构。A
在面向对象方法中,()是一种概念、抽象或具有状态、行为和标识的事物。A.关系
随机试题
BurialCustomsinAncientEgyptEveryoneburnsfatdi
Ifthere’sasensitiveinvestigationintotheflawsofcrimefighters,them
Aperson’shomeisasmuchareflectionofhispersonalityastheclotheshe
ChimpanzeebehavioursSpeciesWecanfindPanorPanTroglodytesinWestandC
督促施工单位编制资金使用计划,分解费用监理目标,对费用控制进行风险分析并制定防范
马克思列宁主义关于战争与和平的思想主要有()。A.私有制和政党的存
下列有关冗余数据的说法,错误的是()。A.数据库中的冗余数据并不一定是越少越好
下列关于有效市场理论的说法正确的是()。A.随机漫步理论认为,股票价格的变动是
目前诊断精神分裂症主要依靠的手段是A、脑影像学检查 B、心理学测验 C、遗传
《突发公共卫生事件应急条例》规定:突发事件应急工作应当遵循的原则是( )。A.
最新回复
(
0
)