对数据库表进行质量保证测试
sql-test的Python项目详细描述
sql测试模块帮助测试sql数据库表之间的数据。这是模块的开发版本。
示例包括将视图中的数据与从星型架构派生的表中的数据进行比较,或将从外部源派生的表的结果与通过etl构建的表进行比较。
主要功能
类:sqltest
- 基于类实例化或自定义SQL查询字符串提供的属性创建并运行SQL数据库查询。
- 根据字段类型分类
count
、low_distinct
、high_distinct
、numeric
、id_check
,完成五个内置测试。 - 标记高于“优先级检查”的指定差异阈值的字段。
- 显示结果摘要。
- 按指定保存结果和摘要。
函数:比较表
- 自动检测要运行的测试类型。
- 使用sqlunittest的方法完成表值的完整比较。
函数:sql_查询
- 执行基本数据库查询
功能概述
测试背后的概念是,数据库信息通常可以由字段(如日期)分割。可以通过比较这些分组中的字段值来进行测试。有关可用功能的更详细描述,请查看development page。
基本查询
运行测试电池
设置代码
结果的摘要版本(作为数据帧或图像),指示表字段(和使用的测试类型)之间的百分比差异,可通过测试电池获得。
可视化摘要
设置
首次安装
文件sql_secrets.py
和sql_config.py
提供了如何配置sqlalchemy引擎的示例。这些文件应为个人使用而定制。
更新sql测试
不幸的是,通过pip更新可能会覆盖您的自定义配置文件。(一旦我能找到避免这种情况的方法,我会更新这一节!)更新之前,请确保将自定义配置文件存储在新目录中或重命名它们。您可以在lib/site packages/sql_test/下的anaconda目录中找到这些文件。然后,您可以将“更新”版本替换为原始版本。
依赖关系
如果尚未安装,则在安装时下载所有依赖项。本模块利用:
致谢
使用PostgreSQL DVD Rental示例数据库完成测试。