我正在为现有的可安装pip的项目添加功能,项目所有者认为我在setup.py安装要求中添加pandas
是“太重了”,因为项目应该保持苗条。我正在添加的功能不需要pandas
(因为功能是在pandas.DataFrame
对象之上的操作),但我为它编写的单元测试需要调用pandas
到{{ 1}}一个用。变异的测试DataFrame。
是否有某种方法只需要setUp
进行单元测试?或者我只是不将它添加到需求中,并在运行单元测试时出现错误以手动安装pandas
?
答案 0 :(得分:5)
是的,在setuptools
中很简单:
# setup.py
from setuptools import setup
setup(
name='your_app',
...
install_requires=...
extras_require={
'dev': [
'pytest', 'pandas', 'coverage', # etc
]
},
)
现在,当您在应用上进行开发时,请使用:
pip install --editable .[dev]
答案 1 :(得分:0)
对于setuptools,您可以使用与tests_require
类似的方式使用install_requires
来列出仅需要进行测试的软件包。
比照。 https://setuptools.readthedocs.io/en/latest/setuptools.html?highlight=tests_require