← 2022 · ZEKU 笔试

推荐答案 测试一下

当模块的代码覆盖率达到100%时,下列说法错误的是

A.并不能确保验证工作已经完成 B.可确认各类用例的激励构造已经完备 C.可确认各种边界点的测试已经足够充分 D.可确认功能验证充分
单选题 中等 笔试真题单选

参考答案

正确选项:D。代码覆盖率(包括行覆盖、分支覆盖、条件覆盖、状态机覆盖等)达到100%只能说明设计代码中的所有被统计点都被至少执行了一次,但无法保证功能验证的完备性。A正确:验证工作还包括功能覆盖率、断言覆盖、时序检查、跨时钟域检查等,代码覆盖率只是其中一项指标。B错误:激励构造的完备性需要覆盖所有功能场景、边界条件、随机约束等,仅靠代码覆盖率无法判定用例是否完备。C错误:边界点通常指输入信号边值、状态机跳转边沿、FIFO满空等,代码覆盖可能因代码结构不包含显式边界而漏测,如if(a > 0)分支覆盖不能保证a=0或a=1的测试。D错误:功能验证是否充分必须依赖功能覆盖模型(如覆盖率组、交叉覆盖、转换覆盖等)以及断言正确性,代码覆盖完全不能代表功能正确。易错点:混淆代码覆盖率与功能覆盖率,认为代码覆盖100%等于验证充分。实际中代码覆盖率高可能因冗余代码或低质量激励导致,且无法覆盖未实现的逻辑。

涉及知识点

  • 代码覆盖率定义与类型
  • 代码覆盖率与功能覆盖率的区别
  • 验证完备性指标
  • 覆盖率的局限性
  • 激励完备性的判断方法
← 上一题
登录后反馈错题
下一题 →