2010年9月全国计算机等级考试四级软件测试工程师笔试真题(含答(4)

2019-01-10 10:32

?

2: 参考答案:

?

试题内容: o (10分)

QESuite Web Version 1.0中,已知某安全文档管理系统测试项目的部分信息如下:

●在测试过程中先后产生4个测试版本,按日期排序分别为SEDM 1.0_101009,SEDM 1.0_101025,SEDM1.0_101103,SEDM1.0_101106。

●功能分类视图中部分待测区域及人员分配定义如下表所示:

o

?

3: 参考答案: (2)测试用例:

①输入:bookCount,输出:合法!

②输入:puts,输出:常、变量标识不能用C语言预定义函数名! ③输入:5student,输出:首字符只能是字母或下划线!

④输入:stu+name,输出:常、变量只能由字母、下划线和数字构成! ⑤输入:float,输出:常、变量标识不能用C语言关键字! ⑥输入:

putsfloatstudentsnamechinachineseenglishchinachinesechinachina,输出:内存不够!

⑦输入:_StuId,输出:合法!

该程序的语句覆盖率或分支覆盖率均无法达到100%,因为该程序允许中

间返回值。如果if条件中任意一个成立就立即返回,那么剩下的语句就无法执行;即使所有的if条件均不成立,运行到最后,那么if条件成立时的语句就无法执行,其覆盖率始终无法达到100%。

?

试题内容: o (20分)

已知C源程序如下:

/**************************************************/ /*功能:检查输入的标识符是否符合C语言规则*/

/**************************************************/ #include #include #include #include #include

o

char* IsLegal(char*CheckWor D.;

const int MaxWordLen=32;

char*ErrorMessages[]={/*错误信息列表*/ \合法!\

\首字符只能是字母或下划线!\

\常、变量只能由字母、下划线和数字构成!\\常、变量标识不能用C语言关键字!\,

\常、变量标识不能用C语言预定义函数名!\, \内存不够!\};

int main() {

char *Prompt=\语言标识符的命名要遵守以下原则:\char *TestWord; inti;

TestWord=(char *)malloc(sizeof(char)*MaxWordLen); /*TestWord存放用户输入*/ if(!TestWor D.

return 1;

/*显示部分提示信息*/ puts(Prompt);

for(i=1;i<=4;i++){

puts(ErrorMessages[i]); }

while(1){

printf(\\n\n请输入一个标识符(大写的Q退出):\提示*/ scanf(\D.;/*得到用户输入*/

if(toupper)(TestWord[0]))==0) break;/*循环出口*/

printf(\\n%s%s\D.);/*判定标识符的合法性*/ }

free(TestWor D.;

return 0; }

/*此函数检验标识符命名的合法性*/ char*IsLegal(char*CheckWor D. {

char*KeyWords[]

={\t\

\\\\\\

\关键字列表*/ char*Functions[]

={\n\

\\\\\\\\\主要预定义函数列表*/

char*Others=\?_?也可以用于关键字,但我们不推荐您使用!*/

int WordLength,i; char*WordTemp;

WordLength=strlen(CheckWor D.;

/*检查标识符命名原则1*/

if((isalpha(CheckWord[0])==0)&&(CheckWord[0]!=Others[0]))

return ErrorMessages[1]; /*检查标识符命名原则2*/ for(i=0;i<WordLength;i++) if((isalnum(CheckWord[i]==0)&&(CheckWord[i]!=Others[0])) return ErrorMessages[2]; /*检查标识符命名原则3*/ for(i=0;i<44;i++) {

if(!strcmp(CheckWord,KeyWords[i])) return ErrorMessages[3]; }

/*检查标识符命名原则4*/ for(i=0;i<69;i++)

{

if(!strcmp(CheckWord,Functions[i])) return ErrorMessages[4]; }

return ErrorMessages[0]; }

(1)参照QESAT/C软件分析与测试工具的规定,画出程序中所有函数的控制流程图;(11分)

(2)设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率尽量达到最大。如果认为该程序的语句覆盖率或分支覆盖率无法达到100%,需说明为什么。(9分)


2010年9月全国计算机等级考试四级软件测试工程师笔试真题(含答(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:心理健康课教学工作总结

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: