大叔大婶带你走一条接地气的测试进阶之路

告诉你如何从执行测试到管理测试(28)

上一篇 / 下一篇  2017-12-07 21:46:13 / 个人分类:项目管理

第二十八章 独立测试环境的投入是否值得?

场景一:

准备了半天的测试数据,点击提交按钮时,页面直接抛出 Error 404,之前还好好的,怎么就不能访问了呢?我截了个图发到研发群里。

“页面怎么不能访问了?五分钟前还是好的。”我问道。

一个服务端开发回复我说:“我刚才改了点东西,重新部署了,正在重启服务器。”

“。。。”

这个场景你是不是看着眼熟?你们是不是也跟开发共用着一套环境?

场景二:

这次上线的所有功能在测试环境都通过验证了,但到了生产环境,就各种功能不能正常使用,排查半天之后,不是配置文件错了,就是数据库表少了个新增字段。也有因为测试环境的某些配置项跟生产环境不一样,导致有些问题到了生产环境才被发现。

在遇到了几次类似上述场景之后,我就跟老大提出,我们得申请独立的测试环境,并附上了我的理由:

  1. 开发环境:
  • 供开发工程师做单元测试、集成测试;
  • 只需要满足最精简的环境需求即可;
  • 可以多个服务共用一台服务器;
  1. 测试环境:
  • 供测试工程师使用的,且唯一认可的测试环境;
  • 服务器的硬件配置可以略低于生产环境;
  • 程序配置文件需要和生产环境保持一致;
  • 该环境由测试工程师维护;
  • 按测试计划部署测试版本;
  1. 预上线环境:
  • 迷你版的生产环境;
  • 服务器的硬件配置可以略低于生产环境;
  • 配置文件和相关环境因子都必须跟生产环境保持一致;
  • 供测试工程师和运维工程师做预发布验证;
  • 作为运营和市场人员做内测使用;
  • 用于减少场景二里80%的意外情况;
  1. 生产环境:
  • 供真实用户使用的现网环境;
  • 测试人员在部署之后做核心业务的验证测试;
  • 测试人员用于重现测试环境无法重现的用户问题;

随着生产规模的扩大和对质量的要求越来越高,为了避免或减少场景一和场景二里的问题发生,投入相应的成本搭建独立的测试环境,不管是从短期效果,还是从长期的结果去看,都是值得的。

在实际的测试体系规划中,其实还有两种环境也是建议独立出来的:

  1. 自动化测试环境:
  • 用于每天自动运行自动化脚本;
  • 为了保持环境的纯净,脚本运行前后可以执行环境初始化脚本和数据清理脚本;
  1. 性能测试环境:
  • 硬件的配置建议跟生产环境保持比例关系;
  • 系统环境变量等参数保持跟生产环境一致;
  • 数据库的数据可以基于生产环境的数据做复制和扩展;
  • 保持纯净的数据备份,用于每个轮次之后的数据初始化;

最后,从成本角度出发说一个小建议,就是这几类环境中,有些是可以考虑采用虚拟服务器去搭建的,比如本地的开发、测试和自动化测试环境,其实预发布环境和生产环境也都可以采取虚拟服务器搭建,不过当下大多数都是用的阿里云服务,这个就不在我们考虑的范围了。


TAG: 项目管理 测试 测试管理

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2018-01-20  
 123456
78910111213
14151617181920
21222324252627
28293031   

数据统计

  • 访问量: 11622
  • 日志数: 82
  • 建立时间: 2017-09-03
  • 更新时间: 2018-01-11

RSS订阅

Open Toolbar