【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE

python虚拟环境

什么是python的虚拟环境呢?提到虚拟环境大多数想到的是虚拟机或者现在流行的容器技术;但今天我们要说的是python的虚拟环境。
python的虚拟环境是指利用工具我们创建的一套独立运行的环境,环境一般包括python的解释器和安装的各种第三方包。我们可以创建多套虚拟环境,来给不同的项目使用,使不同项目的运行互相不受干扰。

为什么要使用虚拟环境

实际项目开发过程中,我们通常会有多项目或者并行的情况,比如A和B项目,他们对于开发语言和引用的包有不同的需求,因此我们需要多套虚拟环境来解决这个问题。

虚拟环境有哪些选择

提供两种选择:
1、使用Python(3.3版本以上)自带的Venv模块来创建和管理虚拟环境。
2、使用第三方 virtualenv来创建和管理虚拟环境

创建和管理虚拟环境

首先来使用自带的venv模块创建虚拟环境:
回到我们之前的django目录下,输入命令python -m venv Nev_env c:\Users\kingdee\New;等待一小会儿创建成功,查看项目目录,发现多了一个Nev_env文件夹,这就是我们刚刚创建的虚拟环境。它相当于这个项目专属的引擎了。
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE
进到Nev_env 文件夹下看看有哪些内容:
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE
主要是三个文件夹,我们的python解释器就在Scripts中,而Lib中就会用来存储我们这个项目后续可能需要引用的包。pyvenv.cfg 文件是创建时放进来的,干嘛用的我也不太清除,大概是用来注册的我猜。

接下来,我们来**虚拟环境:
输入命令Nev_env\Scripts\activate,其实是执行activate.bat文件,看到如下截图表示已经**并进入虚拟环境成功了。于是,我们就可以在此环境下引入我们想要的各种开源库了。
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE

在引入库之前,我们来看下我们都已经安装了哪些自带库,在这里我们使用python的包管理神器,pip。我们到Nev_env\Lib\site-packages目录下会发现pip在创建虚拟环境时已经装好了,因此我们可以直接输入pip freeze命令。发现提示我们pip的版本过低,需要升级,按提示输入命令升级。
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE

升级成功后再次输入freeze命令,发现没有内容,此时我们可以改用pip list命令或者pip freeze --all命令来查看,因为freeze命令不加–all的话是不显示自带的包的。

然后我们来引入后续项目中我们要用到的最重要的一个包requests,输入命令pip install requests,不出意外我们会成功安装requests,这是一个模拟浏览器发送请求的库,可以用来做接口的模拟测试。
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE
最后,如何退出模拟环境,输入deactivate,可以看到我们就成功退出了虚拟环境了。

【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE

如果你使用的是python2或者python3.3以前的版本该如何来使用虚拟环境呢?这里推荐virtualenv
首先输入命令pin install virtualenv,安装成功
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE
然后输入命令virtualenv New_env2,创建第二个虚拟环境。
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE
我们发现和自带的env模块创建的差不多,就是少了一个include文件夹。
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE
接下来的使用就大同小异了,我们切换到Scripts目录下,然后执行activate.bat就可以进入第二个虚拟环境了。退出同样的,使用deactivate即可。
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE

多环境管理神器—virtualenvwrapper

现在我们已经分别通过自带的Env和第三方的virtualenv创建了2个虚拟环境,我们要启用不同的虚拟环境就得切换到不同环境的scripts的目录下去运行activate。2个环境,并没有什么难的对吧,so easy??哈哈,如果我们有七八个环境该怎么办呢,要一个一个去切换是不是很烦?
不,程序员应该要让复杂的事情简单化,virtualenvwrapper,就是我们需要的东东。
输入命令pip install virtualenvwrapper-win(我这里是windows,linux就不要这个尾巴了,直接pip install virtualenvwrapper)安排上!

【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE
安装成功,virtualenvwrapper的默认创建环境会是C:\Users\username\envs下,我们通过编辑系统变量来定制到我们的django项目下:
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE
我们可以使用mkvirtualenv + 虚拟环境名称来创建虚拟环境,也可以在我们django项目目录下新建一个Envs目录,然后把我们之前已经创建的两个环境拷贝过来。
输入命令,lsvirtualenv,可以看到我们之前的两个虚拟环境了。
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE
输入命令,workon Nev_env,则进入这个环境。除此之外,我们还可以方便的切换、删除虚拟环境。是不是方便多了!

使用IDE

虚拟环境搭建好后,我们就可以正式开始项目开发了,在开发项目前,我想建议大家使用IDE来维护项目,当然你也可以选择不用,可能就只用一个Notepad++来写代码,高手打扰了!

IDE的好处不用多说,推荐大家使用pycharm来写django项目,可以使用社区版,也可以使用付费版,付费在中国有多种解决方式,大家可以发挥一下聪明才智哈哈。

使用IDE和今天的内容有关的就是,pycharm在你创建项目时,会自动帮你创建虚拟环境,而且在IDE中项目接口呈树形排列,比较有利于我们的开发和维护工作。
【从零开始】Django搭建接口自动化测试平台系列--创建虚拟环境和使用IDE