数据流向:业务源(rds)->ods->std->dwd->dws->ads-rds>页面;固定的维度会存放在dim相关表中
数仓模型实现逻辑:rds中的数据会和ods的数据 一 一对应(相当于是把业务库落到数仓自己库),dwd中会通过主键外键将有关的业务数据表进行关联 dws中会查询筛选最终的一些数据 存放到 ads库中,再从数仓的ads又回到后端的业务库 ,再反馈给前端到页面。
测试验证范围:
1、从业务源表到ods层由于是一一映射关系,字段一致,字段类型一致,数据量也一致,故这一层由数据开发自己保证两边数据的一致性,测试不做覆盖。
2、测试需要测试的是从ods层到ads层的数据的准确性,可通过数据开发提供的指标口径定义文件,将ods和ads的数据做对比测试,再将ads的数据与页面的展现做对比测试,还包括需要从业务层面对页面中相关联的业务逻辑和流程做测试。(业务库查出来的数据和从数仓表查询出来的数据对比一下)
3、测试的测试用例必须按照页面的数据指标从ods层到ads层再到页面全部串联起来组成完整的数据流用例,必须是直接可溯源的。
准备工作:
- 关于每一个指标的取值逻辑、业务描述(会议评审指标的口径、取数逻辑)
- 测试数据字典表熟悉(相关表字段含义,字段相应值)
- 测试编写数据流测试用例和业务测试用例(数据开发辅助编写相关sql脚本)。
- 发起用例评审会议(PD/数据开发/后端/测试),确保测试用例没有问题。
- 数据开发对ods层数据和业务源数据进行比对,确保没有差异。
问题跟踪:
- 出现问题,先由数据开发排查是否是业务库->ods层的同步问题或者是业务库数据本身的问题,若不是->测试。
- 测试排查是ods层到ads层&后端&前端问题,再找对应的开发。
原则:
数据的一致性、完整性、准确性
数据测试问题(待解决):
业务库修改字段信息没有同步到数据开发
业务库开发对取数模棱两可
测试环境和生产环境数据不同的问题
产品交付到项目,项目的数据不干净(脏数据)
欢迎有想法的朋友在下方留言~~