我试图用Github Action传递由Cypress测试生成的代码覆盖率报告,但它到达SonarCloud时覆盖率为0%. 在我的计划中,我收到了以下警告:

警告:无法解析[/gihub/workspace/overage/lcov.info]中的7个文件路径

警告:第一个未解析路径:C:\Users\ferso\OneDrive\Documentos\Faculdade\cypress-test\src\App.jsx(在调试模式下运行以获取未解析路径的完整列表)

我已经try 使用sed ci实用程序来更正文件路径并使用sonar.javascript.lcov.reportPaths=coverage/lcov.info,,但不起作用

这是我的声纳项目.属性:

sonar.projectKey=fsoupimenta_cypress-test
sonar.organization=fsoupimenta
sonar.javascript.lcov.reportPaths=coverage/lcov.info
sonar.javascript.file.suffixes=.js,.jsx

这是我的SonarCloud工作流程:

      - name: fix code coverage paths
        working-directory: ./coverage
        run: |
          sed -i 's/\/home\/runner\/work\/cypress-test\/cypress-test\//\/github\/workspace\//g' lcov.info
          sed -i 's@'$GITHUB_WORKSPACE'@/github/workspace/@g' lcov.info
          sed -i 's/\/home\/runner\/work\/cypress-test\/cypress-test\//\/github\/workspace\//g' sonar-cloud-reporter.xml
          
      - name: SonarCloud Scan
        uses: SonarSource/sonarcloud-github-action@master
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}  # Needed to get PR information, if any
          SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

推荐答案

更新:我修复了这个错误,在sonar.project-properties中添加了两个属性,如下所示:

sonar.projectKey=fsoupimenta_cypress-test
sonar.organization=fsoupimenta
sonar.sources=src
sonar.tests=cypress/e2e/spec.cy.js
sonar.typescript.lcov.reportPaths=coverage/lcov.info

您可以查看this repository了解更多信息

Reactjs相关问答推荐

迁移到React Router Dom v6后,我是否错误地使用了Link组件?

在带有和设计的表格中禁用和取消选中复选框

如何在MUI X数据网格列中显示IMG?

React中的useEffect钩子

在React Create App TS项目中安装material UI

为什么我得不到我想要的数据?

验证 Yup 中的对象项

Yup.number().integer() 不将 1.0 视为小数,如何解决这个问题?

React 状态不更新

React Router v6 路径中的符号

无法在react 中向表中添加行

React:如何使用条件渲染和react 挂钩来更新另一个组件的状态?

将 clerk 与 supabase 集成的最佳实践

Redux Toolkit 配置,是否适用于全栈应用程序?

来自一个自定义 React Native 组件的样式从另一个自定义组件移除样式

未捕获的类型错误:useSelector 不是函数

调用 Statsig.updateUser 时 UI 不呈现

如何通过 Material ui select 使下拉菜单下拉

使用 React、Redux 和 Firebase 的无限循环

React - useParams() 不会失败 null / undefined 判断