测试女巫自动化进化论写了四期,这四期浓缩了测试女巫5年左右的工作进程,万事开头难,一般开了头就会一发不可收拾,其实在C++为界面,Python的脚本后,我们也发展了C++为界面,C++为逻辑的另一个发展阶段;这个阶段是很多系统厂商的自动化开发team会用的模式,既然大家都了解的工作模式,我就不会再啰嗦;所以我萌生了总结近期,虽然只有1-2年的工作,但是真的是质的飞跃:突破的系统厂的限制,紧跟时代脉搏,但是不得不说这一两年真的非常的累,但是收获也非常的大;所以测试女巫将从这期开启另一个系列的文章。
如果你问,自动化已经很大程度上节省了人力,为什么还需要与互联网时代发生关联,其实回顾我们的自动化历程,本质上还是无法摆脱一个个独立工具的发展模式,对于这种模式其实很难有效率的控管,所以我们生活在互联网的时代,我们可以藉由互联网让我们的自动化脚本管理起来吗?这个想法其实是一个非常恢弘的想法,不是在做一个个工具的思维而是做一个完整的系统,可能还是会有人问:你这样做的意义是什么?举一个例子,在工业时代来临前,有一个非常著名的例子:火车与几十匹骏马比赛,拉相同重量的货物,看是火车跑得快还是骏马跑得快;工业时代发展到现在,还有人去做这个实验吗?现在的高铁,磁悬浮的速度,需要多少骏马呢?是的,人类总是在不断地追求效率,这个效率就是人类活动创造的能量要不断的大于每天消耗的能量。
因为担心与测试女巫公司存在争议,所以测试女巫会利用自己学习的知识,以及还需要为此系列学习一些新知识,搭建一个简单的新系统,为大家讲解;这个过程不会很轻松,但是女巫乐在其中^_^,准备好了吗,我们开始起飞了!
一、此系列的规划
我们的目标是建立一个可以将我们的python开发的脚本管理起来的系统。
开发环境的建立:python,Django,开发虚拟环境的建立
Django架构介绍
Database 与django
Html+Bulma
二、开发环境的建立(以Mac OS为例进行讲解)
1、Python
2、Django
3、开发虚拟环境建立
正文:
一、Virtuallen
Virtuallen是用来创建虚拟环境的软件工具,virtualenv的一个最大的缺点就是,每次开启虚拟环境之前要去虚拟环境所在目录下的bin目录下,source一下activate,这就需要我们记住每个虚拟环境所在的目录。
二、为什么需要虚拟的环境
避免开发环境被作业系统等其它因素影响,开发环境需要一个纯正的不被其它因素干扰的环境,我们的发布是docker的沙盒的环境,开发和发布均在纯净的被隔离的环境下,后续厘清问题会比较容易。
其实可以这样理解,虚拟环境就是被隔离的环境,就是为了让python项目开发时不被全局变量所污染,而Virtualenv就是为单个项目创建独立的python虚拟环境。
三、virtualenvwrapper
virtualenvwrapper是将所有的python项目虚拟环境环境都存放在一起,可以让我们更加方便的管理虚拟环境在使用shell配合小型开发工具就会非常方便。
所以virtualenvwrapper是一个基于virtualenv之上的工具,virtualenvwrapper是管理virtualen创建的虚拟环境的工具。
四、安装virtualenvwrapper基于MacOS
问题
因为Mary的MAC,python3安装的路径为/library/Frameworks/Python.framework/Versions/3.6;
所以在设置bash文档时会出错.
解决方法
open -e .bashprofile会打开.bashprofile这个文档,在这个文档的最后添加以下配置参数:
export WORKON_HOME=HOME/.virtualenvs #虚拟环境统一存储的路径 export PROJECT_HOME=/data/Devel # 定义创建虚拟项目的路径 export VIRTUALENVWRAPPER_PYTHON=/library/Frameworks/Python.framework/Versions/3.6/bin/python3 //定义python3.exe所在的路径 export VIRTUALENVWRAPPER_VIRTUALENV=/library/Frameworks/Python.framework/Versions/3.6/bin/virtualenv //定义virtualenv所在的路径 source /library/Frameworks/Python.framework/Versions/3.6/bin/virtualenvwrapper.sh//打开终端会自动启动这个sh文件 |
保存这个档案后再重新打开terminal就会自动运行这个.bash_profile文档,使配置档案生效需要输入以下命令:
source ~/.bash_profile |
建立方法
直接在terminal中输入mkvirtualenv virtualname(user define)
查看mac的文件夹
可以看出会在kr1510文件夹下,建立一个.virtualenvs的文件夹,其中有你刚刚建立的myfirstvirtualenv这个文件夹
kr1510deMacBook-Air:~ kr1510$ cd .virtualenvs kr1510deMacBook-Air:.virtualenvs kr1510$ ls get_env_detailspostmkprojectpremkproject initializepostmkvirtualenvpremkvirtualenv myfirstvirtualenvpostrmvirtualenvprermvirtualenv postactivatepreactivate postdeactivatepredeactivate kr1510deMacBook-Air:.virtualenvs kr1510$ |
build up virtual development environment to QA Cloud
使用vs code打开qa cloud的code
此范例的前提条件是已经使用mkvirtualen建立了类似沙盒的隔离环境
第一步:打开project并查看沙盒
在vs code的terminal中输入workon就可以看到我们已经使用mkvirtualen建立的所有隔离的环境如下:
一共有两个隔离环境:testautomationframeowork and testqacloud kr1510deMacBook-Air:qacloud kr1510$ workon testautomationframework testqacloud kr1510deMacBook-Air:qacloud kr1510$ |
第二步:进入你想要进入的沙盒
在project的路径下,输入workon testqacloud就可以非常方便地进入这个沙盒环境
kr1510deMacBook-Air:qacloud kr1510$ workon testqacloud (testqacloud) kr1510deMacBook-Air:qacloud kr1510$ |
第三步:在沙盒中build后端环境
pip install -r requirements.txt |
注意:我们的NJ_QAcloud此branch,已经将psycopg此包名改为psycogp-binary,因为这个包的名称发生了变化,不更改安装会失败
已经做过实验,目前这个NJ_QAcloud的branch的requirements.txt是可以正常安装的。
安装完毕后直接运行:python manage.py runserver即可以正常运行
build up virtual development environment on AutomationFramework |
使用vs code打开qa cloud的code
此范例的前提条件是已经使用mkvirtualen建立了类似沙盒的隔离环境
第一步到第三步均与QA Cloud保持一致
第四步:在沙盒中运行celery
说明
new_master这个branch的requirements.txt做了如下修改:
新增django == 2.1.7, Redis指定版本:redis==3.2.0 |
五、总结:
对于virtualenvwrapper,我们经常使用的命令是:
(1)创建沙盒:mkvirtualenv myproject
(2)查看pc中有多少沙盒:workon
(3)激活沙盒:workon myproject
(4)退出沙盒:deactivate
(5)删除沙盒:rmvirtualenv myproject
** 注意删除沙盒必须要退出当前的沙盒 **
......
查看更多精彩内容,请点击下载:
版权声明:本文出自《51测试天地》第五十四期。51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。