原创作者: 九宸@到家 DeepTesting
测试过程中,一套合理的环境管理流程是发布过程中很重要的一环。如何在测试过程中让环境为你服务而不是在环境维护过程投入过多人力,其实还是挺重要的一个工作。
在现在互联网模式下,微服务化架构盛行,毫不夸张的说,好的环境管理流程是事半功倍的。
环境管理的分类
一般的互联网公司环境分为三套:
- 测试环境 提供各应用的统一集成测试环境,其中关键核心底层组件例如DB、Cache、MQ为一套统一提供服务。
- 预发环境 提供预发布测试的统一集成环境,预发布理论上和线上使用相同的数据库,避免因为数据源原因不足导致的测试漏测和发布失败。
- 线上环境 真实应用的线上部署环境
环境管理角色之坑
以上三种环境基本上都是互联网公司的必备的开发测试流程中很重要的三套环境。其实这里面有几个坑点需要特别注意
- 坑点一:测试环境是开发维护、预发和线上是运维维护
1,测试环境是开发维护,所以测试人员在环境过程中一点没有参与过程,对环境部署和系统架构一点无参与,直接导致测试无法参与到问题排查过程;
2,开发维护测试环境部署过程都会比较随意,因此系统复杂之后,部署过程非常耗费时间。
- 坑点二:测试环境是测试维护、预发和线上是运维维护
1,测试环境的部署方案和线上不一致,导致测试环境在发布过程中,有可能出现因为环境依赖而导致的问题无法在测试环境复现;
2,测试环境的部署都是测试进行,测试在过程中成为瓶颈;