是否可以只需要测试而不需要安装包?

2024-01-07

我正在向现有的可安装 pip 的项目添加功能,项目所有者认为我的添加pandas对 setup.py 的安装要求“太重”,因为该项目应该保持苗条。我添加的功能不需要pandas(因为该功能是在pandas.DataFrame对象),但我为它编写的单元测试需要调用pandas to setUp用于变异的测试 DataFrame。

有什么方法可以要求pandas仅用于单元测试?或者我只是不将其添加到要求中,并引发错误以手动安装pandas该单元测试何时运行?


选项1:

使用“额外”setuptools:

# setup.py
from setuptools import setup

setup(
    name="your_app",
    ...
    install_requires=...
    extras_require={
        "dev": [
            "pytest", "pandas", "coverage",  # etc
        ]
    },
)

现在,当您在应用程序上进行开发时,请使用:

pip install --editable '.[dev]'

选项2:

根本不在打包元数据中宣传开发需求,只保留一个开发需求文件 https://pip.pypa.io/en/stable/reference/requirements-file-format/在项目目录中,并在 README 中提到开发人员应该在检查源代码后安装它们

pip install -r requirements-dev.txt
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以只需要测试而不需要安装包? 的相关文章

随机推荐