运行 'python setup.py test' 没有 运行 build_ext?

Run 'python setup.py test' without running build_ext?

我尝试 运行 python setup.py test 而不 运行ning build_ext 以确保任何 C 扩展和项目元数据都是最新的?

如此处所述: https://pythonhosted.org/setuptools/setuptools.html#test-build-package-and-run-a-unittest-suite::

python setup.py test

首先运行build_ext然后运行单元测试。

我有很多东西要编译,有时我想 运行 在没有 build_ext 的情况下进行测试(我知道我没有修改编译的想法)

这可能吗?

我为此使用了一个环境变量。我的 setup.py 文件检查环境变量,并在需要时将 setup 函数的 ext_modules 参数设置为空列表:

# setup.py

# ...

if os.getenv('NO_BUILD') == 'true':
    extensions = []
else:
    extensions = []

setup(
    # ...
    ext_modules=extensions,
)

然后 运行 带有 NO_BUILD=true python setup.py 的测试套件跳过重新构建(假设您的 shell 支持以这种方式传递环境变量)。