环境问题的罗列
测试环境的管理一直是测试人员关注的焦点之一,非独立的测试环境造成对测试的一系列困扰,当团队过多时测试环境的资源开销也会带来诸多成本,这些问题包括:
1.数据独立:测试人员之间数据的干扰;
2.环境独立:多分支并行开发,无法快速配置一套相同的环境;无法满足特定场景下的分布式环境;
4.bug定位:开发与测试环境不一致,导致双方复现问题的沟通成本提高;
5.自动化测试/联调测试:对于自动化或联调时缺乏稳定的测试环境;
6.上线问题:代码漏上、环境配置不一致,搭建高成本的准生产环境;
7.测试成本:每搭建一套环境都要耗费人力精力、新的硬件资源开销;
docker的解决方案
1.测试:Docker 很适合用于测试发布,RD和FE同学可以将 Docker 封装后可以直接提供给测试人员进行运行,不再需要测试人员与运维、开发进行配合,进行环境搭建与部署。
2.测试数据分离:在测试中,经常由于测试场景变换,需要修改依赖的各种DB数据。Docker可以很容易的将这些数据分离到不同的镜像中,根据不同需要随时进行切换。
3.易于问题复现:开发与测试同样配置的环境,再不会出现以环境差异而被拒绝的bug;同时新人到岗时也能迅速建立开发、编译环境。
4.扩展及迁移服务:根据业务请求的情况随时增加和减少容器的运行数量,随需应变。结合ceph快速实现秒迁;
5.其他:以前鼓捣新东西搭个环境费死劲,从公共仓库拉一个吧,也许几分钟就能解决啦;
docker时代的环境管理
经过改造后,软件的开发与上线流程将发生什么样的变化?开发可以将代码、dokcer的构建文件一起推送到代码仓库中,CI服务将根据这些文件构建出镜像,测试人员通过拉取镜像进行测试、上线。不多解释,图解如下:
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/196226.html