欢迎来到 Nox

nox 是一个命令行工具,可以在多个 Python 环境中自动测试,类似于 tox。与 tox 不同,Nox 使用标准的 Python 文件进行配置。

使用 pip 安装 nox

pip install --user --upgrade nox

Nox 是通过你的项目目录中的 noxfile.py 文件配置的。这里有一个简单的 noxfile,运行 lint 和一些测试

import nox

@nox.session
def tests(session):
    session.install('pytest')
    session.run('pytest')

@nox.session
def lint(session):
    session.install('flake8')
    session.run('flake8', '--import-order-style', 'google')

要运行这两个会话,只需运行

nox

对于每个会话,Nox 将自动创建 virtualenv 与适当的解释器,安装指定的依赖,并按顺序运行命令。

要学习如何安装和使用 Nox,请参阅 教程。关于配置会话的文档,请看 配置和 API。关于运行 nox 的文档,请看 命令行用法

使用 Nox 的项目

Nox 很幸运,有几个精彩的项目使用它并提供反馈和贡献。

其他有用的项目

Nox 不是唯一的同类工具。如果 Nox 不完全适合你的需要,或者你想做更多的研究,我们建议看看这些工具:

  • tox 是管理多个 Python 测试环境的事实标准,也是 Nox 的直接精神祖先。

  • Invoke 是一个通用的任务执行库,类似于 Make。Nox 可以被认为是 Invoke 专门为 Python 测试定制的,所以 Invoke 是需要包含远远超过 Nox 专业性的脚本的一个很好的选择。

维护者和贡献者

Nox 是免费的开源软件,是由社区维护者和贡献者促成的。

Our maintainers are (in alphabetical order):

Nox 的存在也是由于 社区 贡献的各种补丁和工作。如果你想参与进来,请参阅 贡献。我们使用 Open Collective 支付我们的贡献者。