逻辑覆盖法是设计白盒测试用例的主要方法之一,通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。 阅读下列说明,回答问题。【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。intXOR(char*filename,unsignedlongkey){FILE*input=NULL,*output=NULL;//ichar*outfilename=NULL;intlen=strlen(fil

欢迎免费使用小程序搜题/刷题/查看解析,提升学历,成考自考报名,论文代写、论文查重请加客服微信skr-web

逻辑覆盖法是设计白盒测试用例的主要方法之一,通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。 阅读下列说明,回答问题。【说明】逻辑覆盖法是设计白盒测试用例的主要方法之一,通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。intXOR(char*filename,unsignedlongkey){FILE*input=NULL,*output=NULL;//ichar*outfilename=NULL;intlen=strlen(filename);unsignedcharbuffer;if((filename[len-2]=='.')&&(filename[len-1]=='c')){//2,3outfilename=newchar[len+1];//4strcpy(outfilename,filename);outfilename[len-2]='\0';}else{//5outfilename=newchar[len+5];strcpy(outfilename,filename);strncat(outfilename,".c",2);}input=fopen(filename,"rb");if(input==NULL){//6cout<<"Erroropeningfile"<<filename<<endl;//7delete[]outfilename;outfilename=NULL;return1;}output=fopen(outfilename,"wb");if(output==NULL){//8cout<<"Errorcreatingoutputfile"<<outfilename<<endl;//9delete[]outfilename;outfilename=NULL;return1;}while(!feof(input)){//10if(fread(&buffer,sizeof(unsignedchar),1,input)!=1){//11if(!feof(input)){//12delete[]outfilename;//13outfilename=NULL;fclose(input);fclose(output);return1;}}else{//14buffer^=key;fwrite(&buffer,sizeof(unsignedchar),1,output);}}fclose(input);//15fclose(output);delete[]outfilename;return0;} 请给出问题2中控制流图的线性无关路径。

线性无关路径: 1.1-2-5-6-7 2.1-2-3-5-6-7 3.1-2-3-4-6-7 4.1-2-5-6-8-9 5.1-2-5-6-8-10-15 6.1-2-5-6-8-10-11-14-10... 7.1-2-5-6-8-10-11-12-10... 8.1-2-5-6-8-10-11-12-13 【解析】 本问题考查白盒测试用例设计方法:基本路径法。涉及的知识点包括:根据控制流图和环路复杂度给出线性无关路径。线性无关路径是指包含一组以前没有处理的语句或条件的路径。从控制流图上来看,一条线性无关路径是至少包含一条在其他线性无关路径中从未有过的边的路径。程序的环路复杂度等于线性无关路径的条数,所以本题中应该有8条线性无关路径。

访客
邮箱
网址

通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作


  • 自动写文案
  • 自动写小说
  • 马上扫码让Ai帮你完成工作
通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作

  • 自动写论文
  • 自动写软件
  • 我不是人,但是我比人更聪明,我是强大的Ai
Top