互联网时代测试女巫的自动化开篇

发表于:2019-7-17 08:24

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:测试女巫    来源:51Testing软件测试网原创

  测试女巫自动化进化论写了四期,这四期浓缩了测试女巫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内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号