成熟的Web开发团队开发,测试,上线的环境和流程是怎样的

2020-09-22 科技 68阅读
总结一下:
1,你需要一个可以模拟线上的开发环境。
2,你需要一个可以模拟线上的测试环境。
3,你需要一个可连调的测试环境。
4,你需要一个自动化的上线系统。
5,一个开发流程适合前后端的。
1,本地反向代理线上真实环境开发即可。(apache,nginx,nodejs均可实现)
2,模拟线上的测试环境,其实就是你需要一台有真实数据的测试机么,我建议没条件搭daily的,就直接用线上数据测好了,只不过程序部分走你们的测试环境而已,有条件搭daily当然最好咯。
3,可连调的测试环境,分为2种。一种是你们开发测试都在一个局域网段,直接绑hosts就完了,不在一个网段,就一人给一台虚拟的测试机,放在大家都可以访问到的公司内网,代码直接往上布即可。
4,自动化的上线系统,如果你们运维不给你们做,我猜你们都是直接ftp往线上扔?那么你可以自己做一个简易的上线系统。原理不复杂,每次上线时都抽取最新的trunk或master,做一个tag,再打一个时间戳的标记,然后分发到cdn就行了。界面里就2个功能,打tag,回滚到某tag,部署【够简易了吧,而且是全自动的】。
5,开发流程就是看项目了还有所用到的工具,构建,框架了。简单来说,原则就是分散独立开发,互相不干扰,连调时有hosts可绑即可。
回答了你的问题之后,我说下我自己的项目是怎么个开发流程。
灰常简单,代码管理工具是svn,起新需求就起新分支,独立开发,开发完合并到trunk,trunk不做任何开发工作,只负责merge。
上线有上线系统,你可以理解为我上面说的那个简易功能的加强版。我们是自带build的功能的。
自己编写build脚本,ant,grunt随便了。做好连到发布系统,一键集成,本地只关心源码开发。
本地环境,我拿nodejs写了一个自带rewrite,反向代理的server,超级仿真线上,一个hosts组管理的工具,一套适合自己部门的grunt插件库【就是很多很多grunt插件。。】。完全适合开发各种独立项目了。
当然如果你的测试,文档都集成在build那一步,是最棒的了。
协同合作我们是每个人开发都有一台自己的测试机,linux的,我本地也有工具可以完成自动build+push的功能。方便快捷。
可能全看下来挺复杂,不过前端工程化确实就是这个样子。帮你脱离之前的手忙脚乱,专注于业务的开发。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com