阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。(20分)
【说明】微内核架构的软件内核相对较小,主要功能和业务逻辑都通过插件实现。某国产通信芯片操作系统使用了微内核架构,其插件与核心系统通过命令方式实现通信。
其通信功能中,获取命令函数主要完成命令获取及通过校验和判断是否为合法命令,如果为合法命令,则函数返回命令字前4字节,否则返回错误码。命令最大长度为16个字节,命令格式为:

具体函数实现如图所示:
刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。(20分)
【说明】微内核架构的软件内核相对较小,主要功能和业务逻辑都通过插件实现。某国产通信芯片操作系统使用了微内核架构,其插件与核心系统通过命令方式实现通信。
其通信功能中,获取命令函数主要完成命令获取及通过校验和判断是否为合法命令,如果为合法命令,则函数返回命令字前4字节,否则返回错误码。命令最大长度为16个字节,命令格式为:
具体函数实现如图所示:
• 【问题3】 (6分)软件的测试覆盖项是度量基于结构测试充分性的一种手段,也是度量测试有效性的一种手段。在软件基于结构测试过程中,通常以语句测试覆盖项、分支测试覆盖项和修正条件判定测试覆盖项作为测试是否充分的度量指标。
• 请补充表5-2中空(1)~(3),指出对上述算法达到100%语句测试覆盖项、100%分支测试覆盖项和100%修正条件判定测试覆盖项所需的最少测试用例数目。
本题考查了软件结构覆盖率的相关知识,包括语句测试覆盖项、分支测试覆盖项和修正条件判定测试覆盖项的度量。
首先,对于获取命令函数部分,我们需要考虑函数的返回路径,包括正常的返回路径和异常情况下的返回路径,因此最少需要设计三个测试用例来覆盖所有的返回路径,达到语句测试覆盖的要求。
其次,对于分支测试覆盖项,我们需要考虑所有的分支路径,包括if条件语句的真假两种情况以及循环语句的执行情况。根据题目中的代码逻辑,我们需要设计三个测试用例来覆盖所有的分支路径。
最后,对于修正条件判定测试覆盖项,我们需要考虑所有的判定条件,包括if条件语句中的判定条件和循环语句中的判定条件。由于循环语句中的判定已经包含在分支测试覆盖中,因此需要额外设计测试用例来覆盖其他未被分支测试覆盖的判定情况。根据题目中的代码逻辑,我们需要设计四个测试用例来覆盖所有的判定条件。
综上所述,为了达到100%的语句测试覆盖项、分支测试覆盖项和修正条件判定测试覆盖项,最少需要设计3个、3个和4个测试用例。
本文链接:• 【问题3】 (6分)软件的测试覆盖项是度量基于结构测试充分性的一种手段,也是度量测试有效性的一种
版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!