我刚开始使用 PHP 7.4.27 和 PHPUnit 9.5.7 和 Xdebug 2.9.8 开发一个软件。我正在收集代码覆盖率,包括所有单元测试的分支和路径覆盖率信息。在“内容”类中,我有一个名为“展开”的方法,我无法解释路径覆盖数据的结果。
这是有问题的方法:
public function unwrap(string $elementToUnwrap = null): self
{
if (empty($elementToUnwrap)) {
$this->content = $this->unwrapData();
return $this;
}
$value = $this->get($elementToUnwrap);
if (!is_array($value) && !is_object($value)) {
throw new InvalidArgumentException('The element to unwrap must exist and it must be of type array or object.');
}
$this->content = $value;
return $this;
}
- 两条黄色标记的路径之间的区别
- 两条蓝色标记路径之间的差异
我不明白为什么有时一行重复三次(if (!is_array($value) && !is_object($value)) {
),有时只重复两次?