开发过程中经常需要自测试,数据开发也是如此,以下是数据自测用到的一些要点,主要用到的是数据库表测试,供大家参考
由于知乎上传xmind的图片好像不清楚,所以也添加了文字版本,也方便复制
![832c71608d3e7a2a98432b1af619107b.png](https://i-blog.csdnimg.cn/blog_migrate/9c8d58909187a8fc00e2f6d03b1db344.jpeg)
数据库表测试
配置项测试
是否入SVN(建表语句)
记录数据OK时间(核对svn上建表语句和开发平台上表结构是否一致)
接到邮件通知
记录测试结果
变更测试
表结构是否发生变化
记录结构变更记录
字段
增加字段
减少字段
是否有唯一主键(大数据平台从数据角度检测唯一键)
字段命名规则符合度
类别变更(大数据平台统一设置为sring)
字段注释和字段名是否对应
常规判断
重复数据
空值
NULL值
时间格式与预定不一至
数据明显错误
不应出现中文处出现中文
乱码
需写字段
确认需写字段都已写值
数值对应字段正确
sql脚本测试
sql语句和表字段串行
脚本字符集(GBK,UTF-8)
脚本unix还是dos
查询结果字段是否写别名(大数据平台别名不能重复,否则会当成一个字段)
分区表是否写分区条件
数据库逻辑测试
逻辑说明文档
入SVN
记录交付时间
算法清楚
记录变更情况
所涉及的表及字段清楚
变更
确认是否存在变更
存在变更记录变更
变更是否入基线
推迟测试计划
数据准备
全面性(从时间,用户,指标,行业等多维度进行分析)
确认模板数据正确性
逻辑测试
支撑数据关系,算法是否正常
准备SQL语句
支撑数据验证
支持运算的所有表数据正确性
支持表的结构是否发生变化
支持表是否满足逻辑计算要求
黑盒测试
保证输入,输出
历史数据处理方法
是否写日志表
是否有定时任务
跑数失败的处理机制
命名规则是否合理
白盒测试
in中数据不超过1000条
语句中使用count(*)等情况
全量更新逻辑
增量更新逻辑
跑数失败的处理机制
中间表(临时表)
中间表的删除机制
中间表的更新机制
跑数失败的处理机制
调度配置验证
workflow 和cord 命名是否符合规范
workflow试跑验证
cord参数配置
cord依赖表配置
cord 完成标记 _SUCCESS
cord->实例->单个->开始-> -1
cord试跑验证
workflow和cord对应关系
仪表板cord和本次配置cord数量验证
数据同步验证
验证前提
接口人提供行业,存储过程
结果表对应关系
全量同步
行业数据全量同步
指定客户卡号数据全量同步
增量同步
按天增量同步数据
多行业同步
行业组合
同步表中无记录
历史数据同步
数据支撑
是否有重复数据等