大公司测试环境也会共用一个测试数据库吗 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
sunkai0609
V2EX    程序员

大公司测试环境也会共用一个测试数据库吗

  •  
  •   sunkai0609 2022-06-30 12:35:01 +08:00 3779 次点击
    这是一个创建于 1198 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 目前我所在的公司测试用的都是同一个数据库,即使测的是不同的功能
    • 所有的功能分支也都是合到 test 分支进行测试,所以可能多个功能一起测试

    感觉理想状况是每个功能单独一个测试环境,单独的数据库,但这样免不了需要额外的人力来维护数据库

    13 条回复    2022-06-30 16:51:49 +08:00
    b1t
        1
    b1t  
       2022-06-30 13:34:59 +08:00 via iPhone
    可以,但没必要,成本太高了
    dcs384371977
        2
    dcs384371977  
       2022-06-30 13:35:32 +08:00
    我这小公司,用了 gitlab 的一个功能,提交合并请求时会自动创建一套环境出来,数据库从测试环境的数据库拷贝过来,数据和功能都是用你自己提交的,测试可以直接在页面点进去测试,合并代码后这套环境自动停止运行
    binge921
        3
    binge921  
       2022-06-30 13:40:32 +08:00
    4 千人的公司不知道算不算大公司 我们是一个部门一个数据库 微服务那种的 测试环境上部署着不同部门的不同微服务
    JsonNode
        4
    JsonNode  
       2022-06-30 13:47:16 +08:00
    1 个 DB ,N 个环境,对应 N 个数据库,区别在于生产环境可能是每个 DB 单独的集群,而测试环境是很多 DB 一个集群,对开发来说是单独的数据库,对 DBA 来说其实也只是运维一个集群,并没有增加额外资源
    xiaotianhu
        5
    xiaotianhu  
       2022-06-30 14:12:00 +08:00
    4w 人公司,自己把库搭在自己开发机上。
    一人一个开发机。
    ql562482472
        6
    ql562482472  
       2022-06-30 14:31:45 +08:00
    @dcs384371977 能详细说下怎么实现的吗 听起来好像不是一个简单的功能
    Velip
        7
    Velip  
       2022-06-30 14:57:30 +08:00
    @dcs384371977 #2 数据量多咋办呢,一个库起码有上百 G 啊
    nothingistrue
        8
    nothingistrue  
       2022-06-30 15:04:39 +08:00
    测试环境跟生产环境,除了前者修改更迅速外,环境上不能有差别,你生产环境用几个数据库,测试环境就得用一个。

    你可能需要的是单元测试的独立数据库。好得单元测试环境,是不需要物理数据库的,临时性的内存数据库即可满足。如果没有那么好的单元测试环境,那就只能本机开个人数据库了,公司或者团队不会提供的,成本不是一般的高。
    balabalaguguji
        9
    balabalaguguji  
       2022-06-30 15:23:24 +08:00
    用 docker 隔离每个测试环境
    lazyfighter
        10
    lazyfighter  
       2022-06-30 15:31:03 +08:00
    数据库都是共用,2 周一个版本,需要合并到一起进行测试,
    dcs384371977
        11
    dcs384371977  
       2022-06-30 15:53:29 +08:00
    @ql562482472 可以参考下 gitlab 的 environment 功能,写 ci 脚本来自动部署的

    @Velip 我说的这种情况是参考于题主问出的这种类似单元测试的问题,如果数据量很大的话,是不是可以考虑只生成部分数据用来测试,不需要全部数据呢
    simonlu9
        12
    simonlu9  
       2022-06-30 16:45:28 +08:00
    小公司没那么多资源,很难搭多套环境,都是共用一个 test 分支
    Suddoo
        13
    Suddoo  
       2022-06-30 16:51:49 +08:00 via iPhone
    每个功能一个环境,n 个环境之间咋同步,你确定自己的功能不依赖别的服务或者模块,自己玩就可以了?

    如果别人负责的模块阻塞了你调试,只能叫负责那个模块的同事到你的环境上帮你改配置、改表结构、更新代码……这样其实效率很低的

    如果别人负责的模块在自己他的环境更新了,而你的环境上还是老的代码,在此基础上,你验自己功能没问题,实际上、换到他的环境上、就能验出来问题

    实际上就是应该所有人共用一套环境
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2993 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 12:05 PVG 20:05 LAX 05:05 JFK 08:05
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86