繁体   English   中英

伊斯坦布尔代码覆盖率-如果未采用路径

[英]Istanbul code coverage - if path is not taken

以下是查找所附伊斯坦布尔报道报告的功能。

export function getControlFromId(controlId, ancestorControl) {
  if (!(controlId && ancestorControl)) {
    return undefined;
  }
  if (controlId === ancestorControl.id) {
    return ancestorControl;
  }

  if (ancestorControl.controls) {
    for (const control of ancestorControl.controls) {
      const result = getControlFromId(controlId, control);
      if (result) {
        return result;
      }
    }
  }
  return undefined;
}

伊斯坦布尔报道报告

问题:为什么说不采用if-path? 该图清楚地显示了if循环中的行。

样本测试数据:

const ancestorControl = {
        name: 'form',
        controls: [
          {
            name: 'Section',
            id: 1,
          },
        ],
      };

根据我的理解,它表明您的if条件已部分执行,这意味着您正在测试ancestorControl.controls可用的正向流程。

您可能会缺少ancestorControl.controls不可用的测试用例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM