You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

语句覆盖与判定覆盖测试问题:ISTQB样题正确答案咨询

ISTQB语句覆盖与判定覆盖样题解析

题目:哪种问题可以通过100%判定覆盖发现,但会被100%语句覆盖遗漏?
A. 循环内部出现的问题
B. 带ELSE的IF分支中出现的问题
C. 不带ELSE的IF分支中出现的问题
D. 循环外部出现的问题

核心概念回顾

  • 语句覆盖:要求所有可执行语句至少被执行一次
  • 判定覆盖:要求每个判定的真、假分支都至少被执行一次

选项逐一分析

选项C(正确答案)

举个示例代码:

if (x > 0) {
    System.out.println("x为正数");
}
// 后续业务逻辑代码

实现100%语句覆盖只需要让x>0为真,执行打印语句后走后续逻辑即可,此时所有语句都被覆盖。但判定的假分支(x<=0的情况)完全没被测试——如果x<=0时后续逻辑存在bug,语句覆盖根本发现不了。而判定覆盖要求必须测试x>0为真和为假两种情况,就能暴露这个假分支关联的问题。

选项B(错误)

如果是带ELSE的IF分支,示例代码如下:

if (x > 0) {
    doSomethingA();
} else {
    doSomethingB();
}

要实现100%语句覆盖,必须执行doSomethingA()和doSomethingB()两个方法,也就是必须走判定的真、假两个分支——此时语句覆盖已经等价于判定覆盖,不存在判定覆盖能发现但语句覆盖遗漏的问题。

选项A、D(错误)

循环内外的问题,并非语句覆盖和判定覆盖的核心差异点。循环场景下的覆盖差异更多和条件覆盖或路径覆盖相关,和本题的两种覆盖类型无关。

内容的提问来源于stack exchange,提问作者Poorna Senani Gamage

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 04:25:59