问题详情
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 逻辑覆盖法是设计白盒测试用例的主要方法之一,它通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。 gz_open (const char *mode) {char * p = (char*)mode; //1char fmode[4];char * m = fmode;char smode = ’\0’;char level = ’\0’;int strategy = 0;do {if (*p == ’r’)//2smode = ’r’; //3if (*p >= ’0’&& *p <= ’9’) {//4,5level = *p - ’0’; //6} else if (*p == ’f’) { //7strategy = 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个测试用例,使之覆盖所有基本路径。
相关标签: 复杂度
未找到的试题在搜索页框底部可快速提交,在会员中心"提交的题"查看可解决状态。
收藏该题
查看答案