Skip to content

feat: automated dbt unit test generation #673

Description

@anandgupta42

Add a dbt_unit_test_gen tool and dbt-unit-tests skill that generates dbt unit tests from manifest + compiled SQL.

Problem

dbt unit testing (shipped v1.8) has near-zero adoption because writing test YAML is tedious — you must identify every upstream ref, mock each with correct column types, and manually compute expected outputs.

Solution

A tool that:

  • Parses manifest for model info, deps, columns, descriptions
  • Uses column lineage to understand input→output mappings
  • Detects testable SQL constructs (CASE/WHEN, JOINs, NULLs, division, aggregation, incremental)
  • Generates type-correct mock data with scenario coverage (happy path, null edge, boundary, incremental)
  • Assembles complete YAML via the yaml library
  • Returns rich semantic context (descriptions, lineage) for the LLM skill to refine values

Reuses existing infrastructure: parseManifest(), dbtLineage(), schema.inspect, sql.optimize, manifest caching.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions