tianyu.chu e88997ee0d fix(tests): ini 键值改单空格(parse_ddl grep 需 path = 字面子串) 1 неделя назад
..
integration e88997ee0d fix(tests): ini 键值改单空格(parse_ddl grep 需 path = 字面子串) 1 неделя назад
unit a437262176 refactor(udf): 合并通用 UDF 并补单测 2 недель назад
README.md 709ca3920b refactor(dw_base): __init__.py 去 findspark 与 21 个未用颜色常量 2 недель назад

README.md

tests — 测试体系

职责

dw_base/ 下的代码(尤其是 UDF、utils、io、dq、pm 等模块)做自动化测试,保证重构与新开发不回退。

目录

  • unit/ —— 单元测试。无外部依赖(不连真实 Spark 集群 / DB),Spark 相关用本地 SparkSession 或 mock
  • integration/ —— 集成测试。连真实 Spark / MySQL / HDFS,验证端到端链路
  • conftest.py(后续加)—— pytest fixtures:fake_sparktmp_hdfssample_df

入口

pytest tests/unit / pytest tests/integration。CI 只跑 unit(集成测试手动触发)。

首批目标

  1. tests/unit/udf/test_spark_common_udf.py —— 对 dw_base/udf/common/spark_common_udf.py 40 个函数的单测(本地 SparkSession,小样本 DataFrame)
  2. tests/unit/utils/ —— 对 dw_base/utils/* 的纯函数单测
  3. tests/unit/datax/ —— dw_base/datax/job_config_generator.py 配置生成单测

依赖

  • pytest待加入 requirements.txt
  • pyspark==2.4.0(已在 requirements.txt,版本对齐 CDH 6.3.2 parcel;集群运行时 HMS 通过 SPARK_CONF_DIR=/etc/spark/conf 下的 hive-site.xml 加载)
  • 对 UDF 单测:本地 SparkSession 即可跑,不需要集群

状态

骨架(未启动)。本批仅建目录 + 本 README。

kb/90-重构路线.md 聚簇 D + §6。