让测试/开发/生产环境相分离

如何做到测试环境、开发环境和生产环境相分离但又能够比较好的保证表结构和存储过程这类程序的一致性?

报表开发过程中遇到要求提供测试环境中的数据,但测试环境中的存储过程和参数表和生产环境差异很大,如果这些测试数据并没有经过存储过程逻辑处理就生成报表数据,似乎又不太科学。

 

 

比较好的解答:

  1. 分权
    生产环境对开发和测试只开放查询权限;需要修改权限时需要经过一定的机制来控制记录,一般只在调试程序时开放修改权限;

    测试环境对开发只开放查询权限;需要修改权限时要经过确认, 一般只在调试程序时开放修改权限;

    开发环境对测试人员只开放查询权限;

    以上三个环境,都由专人负责升版(跑脚本)维护;

    2.定期比对
    2.1 取生产环境数据库作为标准,对比测试环境。
    提取差异部分(表结构、过程、触发器等)进行分析;若差异部分不是计划内的升版脚本所致;则应该删除。这样在下一个计划版本升版后,下下个计划版本没有在测试环境上升版前,测试环境和生产环境就实现了结构上的一致了。

    2.2  至于开发环境,同样与生产环境对比,差异部分先去除最近一次要发布生产的脚本影响,再将剩下的,在开发组内部沟通确认,将没有人负责的删除。这样,可得到相对统一的环境;

    由于开发环境,一般只有一个,所以在多个版本并行开发过程中,数据库管理是相对比较混乱的。在这种情况下,尽量保证测试环境与生产环境的数据库结构的统一。对保证发布质量有较大意义。

    PS:
    在迭代版本比较稳定的情况下,建议测试环境保持两套相对独立的测试环境。一套与生产环境尽量保持一致,主要作为生产报障验证,与修复紧急补丁用;另一套用于准备上生产的例行版本用。这样,看似测试环境多了一套,测试人员的维护成本会高一些;实则这部分维护工作,对于应对在单一测试环境中去验证紧急版本,及生产报障问题时要回退处理时所用的成本,是非常少的。如果服务器条件允许,尽量满足2套测试环境。

想了解更多咨询的同学扫描下方二维码,可以加Q群领取学习资料:753665853  备注:CSDN  

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值