我的软件包中有一组单元测试,这些单元测试在我的开发流程中可以很好地运行,并且当我推送到github时会自动运行(使用travis
)。在pypi上分发项目之前,我已上载到测试pypi服务器(https://test.pypi.org),但是目前尚不清楚如何测试软件包。我从未见过官方发行版中包含过单元测试,而且我seen some answers建议不要这样做。 但是,如何才能测试代码的实际打包版本是否正常工作?
我确实尝试将单元测试包含在pypi发行版中:在我的MANIFEST.in
中,
include PACKAGE/tests
recursive-include PACKAGE/tests *
我在include_package_data=True,
中添加了setup.py
,并在其中添加了一个__main__.py
文件,
import nose
nose.main()
在其中。当我将pip安装的软件包作为模块运行时(即python -m PACKAGE
),它找不到要运行的任何单元测试。 这是错误的方向,并且有更好的方法吗?
答案 0 :(得分:0)
无需对软件包进行测试以对其进行测试。您可以从pypi安装该软件包,确保python解释器找到了已安装的软件包(不是该软件包的某些本地工作副本),然后运行测试脚本的本地副本。