スキル一覧に戻る
armanzeroeight

test-generator

by armanzeroeight

🚀 A collection of Claude subagents, skills, rules, guides, and blueprints for Developers, Engineers, and Creators. | Covering programming languages, DevOps, Cloud, and beyond.

20🍴 4📅 2026年1月18日
GitHubで見るManusで実行

SKILL.md


name: test-generator description: Generates dbt tests including schema tests, data quality tests, and freshness checks. Use when adding tests to dbt models or implementing data quality validation.

dbt Test Generator

Quick Start

Generate comprehensive tests for dbt models including schema tests, data quality tests, and freshness checks.

Instructions

Step 1: Add schema tests

# models/schema.yml
version: 2

models:
  - name: stg_orders
    description: Staging orders table
    columns:
      - name: order_id
        description: Unique order identifier
        tests:
          - unique
          - not_null
      
      - name: customer_id
        description: Customer reference
        tests:
          - not_null
          - relationships:
              to: ref('stg_customers')
              field: customer_id
      
      - name: order_status
        description: Order status
        tests:
          - accepted_values:
              values: ['pending', 'processing', 'shipped', 'delivered', 'cancelled']
      
      - name: order_total
        description: Total order amount
        tests:
          - not_null
          - dbt_utils.accepted_range:
              min_value: 0

Step 2: Create custom data tests

-- tests/assert_positive_revenue.sql
select
    order_id,
    order_total
from {{ ref('fct_orders') }}
where order_total < 0

Step 3: Configure freshness checks

# models/sources.yml
version: 2

sources:
  - name: raw
    database: analytics
    schema: raw_data
    tables:
      - name: orders
        description: Raw orders data
        freshness:
          warn_after: {count: 12, period: hour}
          error_after: {count: 24, period: hour}
        loaded_at_field: created_at

Step 4: Run tests

# Run all tests
dbt test

# Run tests for specific model
dbt test --select stg_orders

# Run specific test type
dbt test --select test_type:unique
dbt test --select test_type:not_null

Test Types

Schema tests:

  • unique
  • not_null
  • accepted_values
  • relationships

dbt_utils tests:

  • accepted_range
  • at_least_one
  • cardinality_equality
  • equal_rowcount
  • expression_is_true
  • recency
  • unique_combination_of_columns

Custom tests:

  • SQL queries that return failing rows
  • Placed in tests/ directory

Best Practices

  1. Test all primary keys (unique, not_null)
  2. Test foreign key relationships
  3. Test accepted values for categorical columns
  4. Add range tests for numeric columns
  5. Configure freshness for critical sources
  6. Create custom tests for business logic
  7. Run tests in CI/CD pipeline
  8. Document test expectations

スコア

総合スコア

70/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新

+5
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

0/5
タグ

1つ以上のタグが設定されている

+5

レビュー

💬

レビュー機能は近日公開予定です