我有一个非常大的Python包,我写了大约3500个语句,有一个强大的单元和验收测试套件。我对代码本身的质量非常有信心,但是我对于软件包用户的安装过程顺利感到不安,因为我不知道如何在适当隔离的环境中可靠地测试安装,缺少像保留备用机器,并在每次测试运行时使用全新的OS安装重新映像。
我怀疑以正确的方式使用virtualenv可能会为测试安装提供适当的测试夹具,但是在扩展的网络搜索之后没有发现任何有用的指导。
如何在开发机器上有效地测试setup.py和其他安装位?
答案 0 :(得分:3)
如果您喜欢工具(我做),请查看fabric以及我在所有项目中编写的Fabric任务集:
这应该适用于任何Python项目并使用:
一些基本工作流程:
fab build # build the package in non-development mode
fab develop # build the package in development mode
fab docs # build/regenerate the documentation
fab test # run tie unit test suite
fab release # run through a tested release cycle
键入:fab -l
获取命令列表,输入fab help:<name>
获取任何命令的帮助。
更新:最近我们添加了fab docker
个命令以使用Docker
fab docker:build # Build a Docker image
fab docker:publish # Publish Docker image to the Docker Hub
fab docker:run # Run a new Docker container
答案 1 :(得分:2)
如果你真的想要隔离而不是在virtualenv中做python setup.py install
。然后使用virtualbox并在其中安装一些免费的Linux操作系统。在安装后拍摄机器的快照,以便您可以随时轻松恢复到起点,并在那里尝试python setup.py install
。