gpt4 book ai didi

sonarqube - Github Actions、Python Coverage 和 Sonarqube

转载 作者:行者123 更新时间:2023-12-04 10:19:15 28 4
gpt4 key购买 nike

我想创建一个执行以下操作的 Github 工作流:

  • pytest 测试我的代码
  • 触发 Sonar Qube Cloud 分析代码并显示我的测试覆盖率!

  • 据我了解,SonarQ 需要一个文件 coverage.xml显示代码覆盖率。这可以用

    pytest --cov=./ --cov-report=xml --doctest-modules

    根据 this article coverage.xml应该在 /github/workspace/coverage.xml 下可用.

    因此,我指定了我的 sonar-project.properties在项目的根文件夹中:
    sonar.organization=pokemate
    sonar.projectKey=PokeMate_name-generator
    sonar.sources=.
    sonar.python.coverage.reportPath=/github/workspace/coverage.xml

    我的操作文件 build.yml :
    on:
    push:
    branches:
    - master
    - develop
    - sonar-qube-setup

    jobs:
    build:
    runs-on:
    - ubuntu-latest

    steps:
    # Checkout repo
    - uses: actions/checkout@v2

    # Dependencies
    - name: Set up Python 3.7
    uses: actions/setup-python@v1
    with:
    python-version: 3.7

    - name: Install dependencies
    run: |
    python -m pip install --upgrade pip
    pip install -r requirements.txt

    # Test
    - name: Test with pytest
    run: |
    pytest --cov=./ --cov-report=xml --doctest-modules

    # Sonar Qube
    - name: SonarCloud Scan
    uses: sonarsource/sonarcloud-github-action@master
    env:
    GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
    SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

    但是,在 SonarQ 上它仍然显示 0% 的测试覆盖率,这可能是因为它找不到 coverage.xml .知道如何进行这项工作吗?

    最佳答案

    错误来自丢失的 sreportPathssonar-project.properties文件。

    关于sonarqube - Github Actions、Python Coverage 和 Sonarqube,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60937340/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com