for-each 循环中枚举值的条件覆盖

Condition coverage in for-each loop over an values of an enum

我有一个 java enum 代码

for (TestEnum testEnum : values()) {
   //do manything
}

覆盖率报告在 foreach 循环中的哪个位置 1 conditions are covered by test。我无法理解它在这个 for-each 循环中检查的 condition 是什么,其中 values() 是一个 enum 函数,它总是 return 这个 enum 的值。谁能解释一下为什么我会收到这样的报告。

for-each 中的代码提供了 100% 的覆盖率。

Iterable 或 Array 上的 for each 循环是该可迭代对象的迭代器上的 for 循环或该数组大小的语法糖。

您案例中未发现的情况很可能是此 Iterable/array 为空时。请注意,您将无法测试它,因为您正在使用枚举(根据定义具有一些值)。