gpt4 book ai didi

python - 如何使用 GItHub Actions 测试我的 python 包?

转载 作者:行者123 更新时间:2023-12-04 16:45:09 25 4
gpt4 key购买 nike

我有一个 python 包,我正在使用 poetry用于依赖管理和打包。
在我的本地环境中,我使用的是 tox在多个 python 版本中测试包。
每次有推送或拉取请求时,如何使用 GitHub 操作来测试我的包?
我尝试过的事情:

  • https://github.com/actions/starter-workflows/blob/main/ci/python-package.yml
    (此官方操作通过 piprequirements.txt 安装,但我使用的是诗歌)
  • https://github.com/abatilo/actions-poetry
    (这个 Action ,可以安装诗,但使用 pip,诗不推荐,因为它会导致我的应用程序依赖冲突,见 issue)
  • https://github.com/ymyzk/tox-gh-actions (我应该使用这个吗?为什么不在每个矩阵(github Action )中运行 pytest,这个 Action 似乎违背了 tox 的目的)

  • 我想在 gh-actions 中测试我的 python 代码。
    在我的情况下,我应该实际使用什么?
    最佳做法是什么?和最优化的工具

    最佳答案

    美的tox是您可以在本地和 CI 上运行它。
    当 CI 在本地通过时,您很有可能获得成功的 CI,而且您只需在一个文件中定义一次测试要求和测试设置。
    为此,我建议使用上述 tox-gh-actions .
    我成功地将此模式应用于数十个存储库。
    我推荐以下博客文章,它很好地介绍了此设置:
    https://hynek.me/articles/python-github-actions/
    你可以看看tox.inigh action config file例如Flask-Reuploaded .
    至于您关于在每个矩阵中运行 pytest 的问题……这里的缺点是您需要自己处理测试设置,并且必须在两个地方定义所有内容,tox.ini用于本地测试和 yaml 配置中的 gh 操作。

    关于python - 如何使用 GItHub Actions 测试我的 python 包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67090610/

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