管理用于测试自动化的Python和Python软件包版本

时间:2018-12-14 14:46:34

标签: python pip pypi

伙计,

我计划使用Python和各种python软件包(例如机器人框架,appium,selenium等)进行自动化测试。但是众所周知,python和所有软件包版本都在不断更新。

如果我们从所有这些版本中选择一个版本,并且随着这些软件包的修订,建议的过程是什么,以使开发环境保持最新版本?

对此有一些指导。

谢谢。

2 个答案:

答案 0 :(得分:5)

如果您使用给定版本的库编写代码,则除非您打算使用新功能,否则将来对库进行更新比使代码运行得更好的可能性更大。在大多数情况下,除非您想更改代码以使用新玩具,否则最好坚持编写代码时使用的版本。

为确保在将程序加载到新计算机上时安装每个库的正确版本,您需要一个requirements.txt文档。制作其中之一很容易。您要做的就是在虚拟环境中构建程序(例如conda create -n newenv conda activate newenv)。仅安装程序所需的库,然后,在安装完所有依赖项后,在终端中输入{{ 1}}。这会将所有依赖项及其版本信息放入文本文档中。如果要在新计算机上使用该程序,只需将pip freeze > requirements.txt合并到该程序的加载过程中。

如果使用pip install -r requirements.txt之类的容器对其进行容器化,则无论何时创建容器,都将自动安装docker依赖项。如果您想使用新的库或库版本,只需在requirements.txt和繁荣时期对其进行更新,就可以保持最新。

答案 1 :(得分:0)

在这种情况下,您希望使用虚拟环境隔离您的程序包(及其依赖的外部程序包/版本)。可以将虚拟环境视为一个文件,该文件可跟踪您要导入的特定程序包版本。因此,您可以在系统上安装最新的软件包,但是您的项目仍将仅在虚拟环境中导入该版本。