itgle.com

设计一组测试用例,尽量使main函数的语句覆盖率能达到100%。如果认为该函数的语句覆盖率无法达到100%,需要说明原因。

题目

设计一组测试用例,尽量使main函数的语句覆盖率能达到100%。如果认为该函数的语句覆盖率无法达到100%,需要说明原因。


相似考题
更多“设计一组测试用例,尽量使main函数的语句覆盖率能达到100%。如果认为该函数的语句覆盖率无法达到10 ”相关问题
  • 第1题:

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


    正确答案:测试用例: ①输入:bookCount输出:合法! ②输入:puts输出:常、变量标识不能用C语言预定义函数名! ③输入:5student输出:首字符只能是字母或下划线! ④输入:stu+name输出:常、变量只能由字母、下划线和数字构成! ⑤输入:float输出:常、变量标识不能用C语言关键字! ⑥输入:putsfloatstudentsnamechinachineseenglishchinachinesechinachina输出:内存不够! ⑦输入:_StuId输出:合法! 该程序的语句覆盖率或分支覆盖率均无法达到100%因为该程序允许中间返回值。如果if条件中任意一个成立就立即返回那么剩下的语句就无法执行;即使所有的if条件均不成立。运行到最后那么if条件成立时的语句就无法执行其覆盖率始终无法达到100%。
    测试用例: ①输入:bookCount,输出:合法! ②输入:puts,输出:常、变量标识不能用C语言预定义函数名! ③输入:5student,输出:首字符只能是字母或下划线! ④输入:stu+name,输出:常、变量只能由字母、下划线和数字构成! ⑤输入:float,输出:常、变量标识不能用C语言关键字! ⑥输入:putsfloatstudentsnamechinachineseenglishchinachinesechinachina,输出:内存不够! ⑦输入:_StuId,输出:合法! 该程序的语句覆盖率或分支覆盖率均无法达到100%,因为该程序允许中间返回值。如果if条件中任意一个成立就立即返回,那么剩下的语句就无法执行;即使所有的if条件均不成立。运行到最后,那么if条件成立时的语句就无法执行,其覆盖率始终无法达到100%。

  • 第2题:

    已知C源程序如下:

    / * longIntAdd * /

    include <stdio. h>

    include <string. h>

    define LENGTH 81

    void addLInt(char sl[],char s2[]); void reverse(char s[]) ; int main()

    {

    char intstrl[LENGTH],intstr2[LENGTH];

    printf("请输入超长整数的被加数和加数:\n")

    scanf("%s%s" ,intstrl ,intstr2) ; addLInt(intstrl ,intstr2) j printf("超长整数和为: %s" .intstrl); return 0;

    }

    void addLInt(char sl[] ,char s2[]) {

    int i=0,tmp,c=0;

    char s[LENGTH];

    if(strlen(s1)<strlen(s2)){ strcpy(s,sl); strcpy(sl,s2); strcpy(s2,s);

    }

    reverse(sl);reverse(s2);

    while(s2[i]! ='\0'){

    tmp=sl[i]-'0'+s2[i]-'0'+ c;

    sl[i] = tmp%10+,0';

    c=tmp/10;

    i++; } while(sl[i]! ='\0,&&c){

    tmp=sl[i] —'0' + c;

    sl[i] = tmp%10+'0';

    c=tmp/10;

    i++; } If(c){

    sl[i++] = c+'0';

    sl[i] = '\0'; } reverse(sl);

    }

    void reverse(cliar s[])

    {

    inti,j,c;

    for(i=0,j = strlen(s) -l;i<j;i++,j--){

    c=s[i]; s[i] = s[j]; s[j] = c; } }

    (1)画出程序中函数addLInt的控制流程图(10分);

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


    正确答案:×
    (1)函数addLInt的控制流程图。 C2)测试用例 a.sl:“111111111111111l”s2:“2222222222222222” b. s1:“123456789” s2:“989” c.s1:“989” s2 :“123456789” d.sl :“999999999999” s2 :“111111” 解析:语句覆盖是指设计若干测试用例,运行被测程序,使得每个可执行语句至少执行一次。 语句覆盖率=被评价到的语句数量/可执行的语句数量×100%。 设计若干测试用例,运行被测程序使得每个判定的取真分支和取假分支至少评价一次。 判定覆盖率=被评价到的判定分支个数/判定分支的总数×100%。 当输入a、b、c、d中的测试用例后,语句覆盖率和分支覆盖率均为100%。

  • 第3题:

    10、单元测试通过的标准是什么?

    A.程序通过所有的单元测试用例

    B.语句覆盖流程达到100%

    C.分支覆盖率达到85%

    D.需求规格说明书中的需求必须全部实现并测试通过


    程序通过所有的单元测试用例;语句覆盖流程达到 100%;分支覆盖率达到 85%

  • 第4题:

    设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率均能达到100%。如果为该程序的语句或分支覆盖率无法达到100%,需说明为什么。


    正确答案:测试用例包含几种情况: ①正数3; ②负数-12.4;
    测试用例包含几种情况: ①正数3; ②负数-12.4;

  • 第5题:

    ● 以下叙述中,不符合软件单元测试技术要求的是 (42) 。

    (42)

    A. 对软件设计文档规定的软件单元的功能、性能、接口等应逐项测试

    B. 每个软件特性应至少被一个正常测试用例和一个异常测试用例覆盖

    C. 语句覆盖率达到100%

    D. 分支覆盖率达到80%以上


    正确答案:D