Fügt Tests zu einem Model hinzu
Adds dbt tests to models based on Data Vault patterns (hub, satellite, link). Automatically generates unique, not_null, and relationship tests for hash keys and business keys.
/plugin marketplace add fellnerd/claude-marketplace/plugin install datavault@dimetrics-marketplaceFüge dbt Tests zu einem Model hinzu.
models:
- name: hub_{{ENTITY_NAME}}
columns:
- name: hk_{{ENTITY_NAME}}
tests:
- unique
- not_null
- name: {{BUSINESS_KEY}}
tests:
- unique
- not_null
models:
- name: sat_{{ENTITY_NAME}}
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
- hk_{{ENTITY_NAME}}
- dss_load_date
columns:
- name: hk_{{ENTITY_NAME}}
tests:
- not_null
- relationships:
to: ref('hub_{{ENTITY_NAME}}')
field: hk_{{ENTITY_NAME}}
models:
- name: link_{{ENTITY1}}_{{ENTITY2}}
columns:
- name: hk_link_{{ENTITY1}}_{{ENTITY2}}
tests:
- unique
- not_null
- name: hk_{{ENTITY1}}
tests:
- relationships:
to: ref('hub_{{ENTITY1}}')
field: hk_{{ENTITY1}}
Tool: add_tests
Args: {
"modelName": "{{MODEL_NAME}}",
"testTypes": ["unique", "not_null", "relationships"]
}
# models/schema.yml
version: 2
models:
- name: {{MODEL_NAME}}
description: "Automatisch generierte Tests"
columns:
- name: hk_{{ENTITY_NAME}}
description: "Hash Key"
tests:
- unique
- not_null
# ... weitere Spalten
Tool: run_command
Args: { "command": "dbt test --select {{MODEL_NAME}}" }
═══════════════════════════════════════
dbt test - Ergebnis
═══════════════════════════════════════
✓ unique_hub_company_hk_company .......... [PASS]
✓ not_null_hub_company_hk_company ........ [PASS]
✓ unique_hub_company_company_id .......... [PASS]
✓ not_null_hub_company_company_id ........ [PASS]
═══════════════════════════════════════
Completed: 4 tests | 0 failures
═══════════════════════════════════════
/add-tests hub_company
/add-tests sat_company
/add-tests link_company_country