团队自动化环境搭建与管理--php博弈
我是方少,很开心与大家日后与大家交流技术上面的一些想法和一些业务上的分享。以前从来没写过博客,因为觉得不重要吧,如今觉得有必要沉淀一些想法和回忆。好了费话不多说。
先上图:

业务问题:在每次新伙伴加入和每个伙伴们都是自己的系统,会导致四个后果。
一, 重复配置。
二,员工本地php配置环境和虚拟配置机测试环境和线上配置环境不一致,上线后容易出现未知的BUG
三,配置文件不一致,由于线上环境多是nginx配置,而伙伴们大多用apache,导致测试服不得不再重新配置 nginx配置文件。
四,如果一个伙伴项目转移给另一个伙伴,又不得不重新配置此项目造成时间成本的浪费。
业务需求: 一,新员工入职后或伙伴系统重新安装后,可以一键安装相同的PHP环境
二,每个项目的nginx配置文件可以通过SVN共享。
三,提供新手入自动化环境搭建介绍文档和下载包
业务前置:一,已安装SVN
二,nginx配置文件,因为不是很机密文件,可以全员共享
技术步骤:一 下载SVN,并安装,提供32位和64位
二 下载NGINX,并安装。统一安装到F盘
三 下载一键配置脚本,如下
a 删除nginx配置conf目录下的所有文件
b conf目录checkout所有项目配置,并生成快捷键,生成nginx重启快捷键
c 生成团队统一目录 /php/
总结:由于团队每个人的配置一样,所以大多情况下,项目移交他过程不会出现预知BUG而苦恼。 只需要SVN更新conf目录,并重启nginx就OK了
团队自动化环境搭建与管理--php博弈的更多相关文章
- iOS自动化环境搭建——macaca
macaca-java for ios 自动化环境搭建 基础原理解析:https://testerhome.com/topics/6608 一.环境搭建 1.安装eclipse; -----Java开 ...
- Java自动化环境搭建笔记(3)
Java自动化环境搭建笔记(3) 自动化测试 自动化的环境已经基本搭建完成,后续可对BaseTester基类以及工具类进行扩展.下面便是持续集成的环境的搭建: Jenkins安装 git安装 源码上传 ...
- Java自动化环境搭建笔记(2)
Java自动化环境搭建笔记(2) 自动化测试 在笔记一中已经完成了一键构建项目.xml指定规划测试集.数据解耦与allure报告生成的开发.接下来便是: 浏览器驱动通过配置启动 页面元素定位解耦,通过 ...
- Java自动化环境搭建笔记(1)
Java自动化环境搭建笔记(1) 自动化测试 先搭建java接口测试的环境: 使用mvn命令构建项目 测试集通过testNG.xml组织并运行 测试数据解耦,通过Excel等文件提供 基础依赖 创建m ...
- 基于python的App UI自动化环境搭建
Android端Ui 自动化环境搭建 一,安装JDK.SDK 二,添加环境变量 Widows:1.系统变量→新建 JAVA_HOME 变量E:\Java\jdk1.7.0 jdk安装目录 2.系统变量 ...
- appium ios真机自动化环境搭建&运行(送源码)
appium ios真机自动化环境搭建&运行(送源码) 原创: f i n 测试开发社区 6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...
- appium ios真机自动化环境搭建&运行(送源码)
appium ios真机自动化环境搭建&运行(送源码) 原创: f i n 测试开发社区 6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...
- MAC自动化环境搭建
UI自动化环境搭建 第一阶段:配置appium环境硬件配置mac系统电脑 java环境sunjiedeMacBook-Air:~ vicent$ java -versionjava version & ...
- 手机APP自动化环境搭建
1 摘要 近年来,随着移动应用从数量上和逻辑复杂程度上的增长,以及产品发布周期的紧缩,使得回归测试迫在眉睫,鉴于此APP自动化测试变得越来流行,当前主流的APP自动化工具有:Appium.Roboti ...
随机推荐
- Java Set接口
Set 集合不能包含重复的元素的集合.该模型数学抽象集合. Set接口只包含继承自Collection的方法,并增加了重复的元素被禁止约束性. 集还增加了对equals和hashCode操作的行为更强 ...
- Photoshop笔记一
Photoshop界面认识 Photoshop界面认识 区域划分 工作 (快捷键) 功能键 常用键: 新建图层 剪切并原位粘贴 建立图层组合 合并图层 课程练习讲解 区域划分
- Android使用MVP时应该注意的问题
生命周期:因为Presenter是View创建的,我们需要确保完全地理解View的生命周期,特别是因为它将最有可能去处理状态更新和异步数据.举个例子,每一个Presenter应该在View destr ...
- 用英文加优先级来解读C的声明
比如:int ( * func_p ) ( double ); 首先着眼于标识符. func_p is 因为存在括号,(* func_p) 先被处理,这里着眼于* func_p is a pointe ...
- ShowModal在FireMonkey移动应用程序对话框
This is the only code that changes between the first and second code snippets: dlg.ShowModal(procedu ...
- poj动态规划列表
[1]POJ 动态规划题目列表 容易: 1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 1189, 1208, 1276, 13 ...
- HttpContext.Current.User.Identity.IsAuthenticated
HttpContext.Current.User.Identity.IsAuthenticated=false; HttpContext.Current.User.Identity.Name==&qu ...
- 浅析为什么char类型的范围是 —128~+127
转载于daiyutage 在C语言中, signed char 类型的范围为-128~127,每本教科书上也这么写,但是没有哪一本书上(包括老师)也不会给你为什么是-128~127,这个问题貌似看起来 ...
- HTML页面中常见的一些小方法
在<Head>标签中加 <meta http-equiv="pragma " content="no-cache"> <met ...
- 自定义View(二)ViewPage广告轮播
自定义View的第二个学习案例,使用ViewPage实现广告轮播,通过组合现有的View实现效果如下: 有关ViewPage使用可以学习谷歌官方API,和训练案例: 1.使用ViewPage实现屏幕滑 ...