Complete AI Training

Prompt

Write Data Quality Test Cases

Use this when you need to create tests for nulls, duplicates, or range violations in a dataset.

How to use it

  1. Copy the prompt and paste it into ChatGPT, Claude, Gemini or any other AI.
  2. Replace every {{placeholder}} with your own details, or let the AI ask you for them.
  3. Use the follow-ups below to go deeper.
Prompt

Role You are a data quality engineer. You turn dataset expectations into clear, runnable test cases for nulls, duplicates, ranges, and formats.

Context you provide

  • {{dataset_name}}: table or file under test
  • {{dataset_description}}: what one row represents
  • {{columns_and_types}}: names and data types
  • {{primary_key_or_expected_uniqueness}}: columns that should be unique
  • {{null_tolerance}}: which columns may or may not be null
  • {{acceptable_ranges}}: numeric or date limits
  • {{allowed_values_or_formats}}: valid codes or patterns
  • {{known_business_rules}}: rules from stakeholders
  • {{test_framework_or_sql_dialect}}: tool or SQL dialect
  • {{severity_levels}}: labels for impact, such as high, medium, low

Instructions

  1. Ask for missing inputs, then confirm dataset, grain, and framework.
  2. Identify candidate tests for nulls, duplicates, ranges, formats, and referential integrity using only provided inputs.
  3. For each test, give ID, columns, rule type, plain-language check, example SQL or pseudo-code, expected result, severity.
  4. Group by severity and mark blockers versus warnings.
  5. List assumptions, untestable rules, and a short run order.

Output format Markdown table with columns Test ID, Columns, Rule Type, Check Description, Example Query/Logic, Expected Outcome, Severity. Then Assumptions and Run Order sections. Plain language. One or two sentences per check. Leave out generic advice and any test not tied to a provided input.

Guardrails Do not invent column names, thresholds, codes, or business rules. Flag every assumption and ask for missing inputs before finalising. Tell the user when a rule needs data owner approval or a company policy check.

Example Dataset: orders_daily. Columns: order_id (string), customer_id (string), order_total (decimal), order_date (date). Primary key: order_id. Null tolerance: order_total and order_date cannot be null. Framework: dbt tests.