Skip to content
发布于 更新于

1. root(测试用例模板) ​

1.1. 缓存测试 ​

1.1.1. 是否有定时生成缓存,定时时间是否合理 ​

  • 1)数据库同步到redis缓存全量刷新校验
  • 2)数据库同步到redis缓存增量刷新校验
  • 3)redis同步到本地缓存全量刷新校验
  • 4)redis同步到本地缓存增量刷新校验
  • 5)redis校验不同状态的数据,哪些状态需要同步到redis缓存,哪些状态不需要同步到redis缓存
  • 6)redis缓存时间校验
  • 7)本地缓存不同状态校验,哪些状态的需要从本地缓存移除

1.1.2. 缓存一致性 ​

1.2. 异常测试 ​

1.2.1. 幂等 ​

  • 1)幂等的实现方式: 用例必须提及幂等的实现方式,基于mysql、redis等,针对不同的实现方式设计不同的测试用例
  • 2)幂等并发测试: 必须有幂等并发提交,可运行回放平台和mq控制台等,对dubbo\http\mq并发提交请求,可以修改请求数据确保第一次一定是正常
  • 3)时序测试 :如果涉及定时任务查询和mq等多种方式改变单据状态,必须构造不同时序的达到,如定时任务先查询再mq或mq先到再定时任务查询,上下游幂等方式是否统一、是否唯一,用例中必须涉及

1.2.2. 异常 ​

  • 1)接口服务异常
  • 2)网络异常
  • 3)超时
  • 4)事务异常回滚
  • 5)上下游数据不一致处理

1.3. 告警 ​

1.3.1. 告警机制:异常是否有平台或异常错误告警 ​

1.4. 可靠性测试 ​

1.4.1. 重试或渠道错误码验证 ​

  • 1)正常错误码处理
  • 2)异常错误码处理
  • 3)未知错误处理(可通过mock)

1.4.2. 兼容性机制 ​

  • 1)服务上下游新老版本兼容
  • 2)前后端新老版本兼容

1.4.3. 降级 ​

  • 1)核心服务不可用时是否有限流(可通过回放平台验证)
  • 2)性能评估

1.4.4. 灰度 ​

  • 1)灰度策略
  • 2)新老数据兼容

1.5. 数据分片与多线程测试 ​

1.5.1. 分片机制 ​

  • 字段取值是否合理,长度是否超过限制
  • 是否有重复取值
  • 分片大小是否合理,过多或过少?

1.5.2. 多线程 ​

  • 是否会取到重复数据
  • 取到重复数据的异常处理
  • 大数据验证
  • 并发验证

1.6. 数据库设计 ​

  • 字段长度:名称大于32位或是64位

  • 数值精度:至少2位精度

1.7. 状态机测试 ​

1.7.1. 下游返回的状态穷举 ​

1.7.2. 系统本身的状态流转 ​

1.8. 管理页面 ​

  • 删除

  • 新增

  • 删除后新增是否影响历史记录

  • 新增后修改

  • 文件下载

  • 字段长度限制

  • 下载数据总量限制

1.8.1. 配置项 ​

  • 配置项删除对业务的影响

  • 修改后调用业务接口

1.9. 定时任务 ​

  • 重复数据是覆盖、更新?
  • 数据是否被处理的标识是什么字段
  • 分片的字段是哪个

1.10. 数值类 ​

1.10.1. 最大值 ​

1.10.2. 最小值 ​

1.10.3. 小数位数 ​

1.10.4. 四舍五入 ​

1.10.5. 汇总与轧差 ​

  • 使用java stream 做sum时,使用了DoubleStream或IntStream导致数据精度缺失或汇总后数值溢出

1.11. 日期类 ​

1.11.1. 多个业务日期 ​

  • 支付日期
  • 回单日期
  • 退票日期

1.11.2. 创建日期 ​

1.11.3. 业务日期 ​

1.11.4. 会计日期 ​

1.11.5. 上游业务日期 ​

1.12. 大数据同步 ​

1.12.1. 已有数据同步策略 ​

  • 忽略 inser ignore
  • 覆盖 replace
  • 更新 update

1.12.2. SQL ​

  • 加减时数值判空 ifnull

1.13. 接口测试 ​

  • 下游超时、失败,状态一致性,补偿机制

基于 VitePress + GitHub Actions 自动部署