设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率尽量达到最大。如果认为该程序的语句覆盖率或分支覆盖率无法达到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%。