首页 > 解决方案 > 带有 ReactJS 的 SonarQube - 对重复项和新代码覆盖率的误报

问题描述

我正在尝试使用 SonarQube(第一次使用该工具)版本 6.7.5 分析正在进行的 ReactJS 项目,但在第二次代码扫描后,由于新代码的 0% 覆盖率和 5% 的新代码重复行,我得到质量门失败.

第一个问题 - 当我看到 SonarQube 获取新代码时,我完全不知道为什么我会得到它(没有覆盖新代码)。看起来大多数功能组件都没有被测试覆盖。

第二个问题 - 重复。它们中的大多数都是误报,例如导入语句或声明(例如 react-table 和列声明)。有没有办法将它们标记为非重复?或者是否有任何解决方法可以使这些代码块有效(不是重复)?

标签: reactjssonarqube

解决方案


谈到您的第一个问题: 您是否设置了先决条件? https://docs.sonarqube.org/latest/analysis/languages/javascript/

你配置了reportPaths 和reporter 吗?我认为 SonarQube 需要它与您的测试框架的覆盖工具同时运行以分析整个项目覆盖数据。 https://docs.sonarqube.org/latest/analysis/coverage/

您的第二个问题可能按第一个解决方案排序。(实际上我在这里是因为我自己的问题:SonarQube 没有正确分析 React 组件/JSX,并将其视为代码重复。这不是我的项目,所以我可能只需要向上级询问升级 SonarQube。 ..希望能为我解决这个问题。)


推荐阅读