配置中心替换测试设计分享

一、背景

项目后端服务开始一直使用Apollo配置中心(携程开发)进行配置管理,由于公司自研了配置中心B,为了后续方便管理和降本增效,后端服务使用的配置需要由Apollo配置中心切换到自研配置中心B。后续不再使用Apollo配置。
替换前架构:
在这里插入图片描述
替换后架构:
在这里插入图片描述

二、需求

1、使用B配置中心替换A配置中心,功能上B配置中心替换后与替换前完全保持一致。
2、性能上B配置中心替换后相比替换前不下降。

三、功能实现

Apollo配置中心使用.properties格式配置,B配置中心使用.yaml格式配置。
所以实现方式为:将xxx.properties格式文件内容转化为xxx.yaml格式文件内容。
举个例子
xxx.properties格式样例

person.pet.name = 金毛犬
person.pet.weight = 13.14
 
person.interests = [篮球,足球,排球]

xxx.yaml格式样例

person.pet.name: 金毛犬
person.pet.weight: 13.14
 
person.interests: |
    [
        篮球,
        足球,
        排球
    ]

四、测试设计

功能上质量保障思路:

维度1:配置diff

  • B配置中心的每项配置与Apollo配置中心每项配置逐一进行diff,差异符合预期,不新增配置,不减少配置,不篡改配置,与替换前保持一致。

维度2:B配置中心更新机制测试

  • 热更新机制:确认修改哪些配置,不用重启服务,变更(新增,删除,修改)之后可以立即生效。
  • 非热更新机制:确认修改哪些配置,需要重启服务才能生效。

维度3:BE功能效果验证

  1. 后端服务接口核心功能回归验证,核心功能与之前保持一致。
  2. B配置中心的每项配置对应的功能验证生效
  3. 存量回归测试用例通过。
性能上质量保障思路:
  • 使用压测工具跑一下性能数据,QPS性能指标相比配置中心替换前不下降。

五、测试发现问题

  • 问题1:diff发现,新增配置内容。

  • 描述:diff发现,B配置中心相比Apollo配置中心,新增3项配置。

  • 原因:Dev将下个版本未经测试内容合入当前发布版本。

  • 解决办法:Dev撤回新增的3项配置
    #################################

  • 问题2:"="乱码不一致问题

  • 描述:Apollo上显示"=“,然而在B配置中心显示”\u003d"

在这里插入图片描述

  • 原因:编辑器使用不一致,导致乱码
  • 解决办法:B配置中心修改为"="

六、复盘

  1. Dev需要加强自测
  2. 测试过程中,需要耐心,仔细,全面,多维度保障产品质量。

水平有限,难免不足,欢迎分享交流!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值