大数据测试


大数据测试重点关注

大数据测试

hadoop生态系统组件测试工具

分类 测试工具 说明
专项 hadoop GridMix hadoop集群测试
专项 YCSB NoSQL数据库的性能测试
专项 linkBench Facebook 社交图谱
专项 SysBench Mysql基准测试
综合 hibench Hive平台的基准测试
综合 ICT BigDataBench 大数据测试工具
端到端 BigBench 基于TPC-DS

ETL测试主要流程

大数据测试

分析业务及需求

1.业务流程和业务规则——根据业务需求分析源表与目标表 mapping 关系。
2.数据重点关注

FOCUS
数据质量现状
表字段含义
元数据信息
解析数据流转血缘关系

测试计划+用例设计+数据准备

1.与数据开发人员沟通——拿到数据处理的详细步骤
2.提前准备测试用例和数据——最大程度覆盖测试场景。

静态代码CR

静态代码CR的目的是尽早通过阅读代码发现显而易见的缺陷或Bug。
比如:数据类项目(主要侧重HiveSQL的CR)通用检查项如下:

HiveSQL的CR
正确性——表名、字段名、主键名、DML、DDL 语句
合理性——字段顺序、数据类型、脏数据的处理
对应——[表中字段的业务含义,实际业务]
数据计算异常——如除数为0、NULL、空字符串
数据精度——是否达标
数据去重——满足业务
数据流转逻辑符合需求文档
编码规范

测试执行

  • 不污染生产数据
  • 测试覆盖全面
测试要点
侧重
数据质量
数据处理过程

功能+性能+安全

功能测试
功能FOCUS
数据完整性
数据一致性
数据准确性
数据的及时性
数据间的约束检查
数据处理逻辑
数据存储检查

场景:

  • HiveSQL语法
  • 规范验证
  • 加载规则
  • 调度任务的测试

数据质量(数据质量监控平台来进行定期监测):

  • 数据完整性
  • 一致性
  • 准确性
  • 及时性也
性能测试

常规性能测试验证参数:

  • 内存使用率
  • 吞吐率
  • 任务完成时间
  • 存储:大数据量情况下数据如何存储在不同的节点中,是否有表漏写分区
  • 并发性:大并发场景下的数据读取、写入、计算等性能,有多少个线程可以执行写入和读取操作。
  • JVM参数:堆大小,GC收集算法。
  • 缓存:调整缓存设置“行缓存”和“键缓存”。
  • 超时:连接超时值,查询超时值、任务执行超时。
  • 消息队列:消息速率,大小。
安全测试
  • 特殊数据进行加密
  • 数据权限:(库、表、文件层面)+ (数据行、列)
  • 实施数据读取、下载、管理权限控制

相关文章: