如何使用 GItHub 操作测试我的 python 包?

How to test my python package using GItHub Actions?

我有一个python包,我正在使用poetry进行依赖管理和打包。

在我的本地环境中,我使用 tox 来测试多个 python 版本的包。

如何在每次有推送或拉取请求时使用 GitHub 操作来测试我的包?

我尝试过的事情:

我想在 gh-actions 中测试我的 python 代码。

在我的情况下,我应该实际使用什么?

最佳做法是什么?和最佳工具

tox 的美妙之处在于您可以在本地和 CI 上 运行。

当它在本地通过时,您有很高的成功机会CI,而且您只需要在一个文件中定义一次测试要求和测试设置。

为此,我建议使用提到的 tox-gh-actions

我成功地将此模式应用于数十个存储库。

我推荐以下博客 post,其中对这种设置进行了很好的介绍:

https://hynek.me/articles/python-github-actions/

你可以看看tox.ini and the gh action config file for e.g. Flask-Reuploaded

至于你关于 运行ning pytest in every matrix 的问题...这里的缺点是你需要自己处理测试设置,并且你必须在两个地方定义所有内容,tox.ini 用于本地测试,在 yaml 配置中用于 gh 操作。