Skapa singulartester

Intermediate dbt

Mike Metzger

Data Engineer

Vad är ett singulartest?

  • Anpassat datatest
  • Skrivs som en SQL-fråga
    • Måste returnera rader som misslyckas
  • Definieras som en .sql-fil i tests-kataloger

Testbild

1 Foto av Antoine Dautry på Unsplash
Intermediate dbt

Exempel på singulartest

  • Skapa ett test för att verifiera:
    • order_total >= subtotal
select *
from order
where order_total < subtotal
  • Kom ihåg att vi vill ha rader som misslyckas – om rader returneras misslyckas testet.
  • Spara filen som assert_order_total_gte_subtotal.sql

Schemadiagram för order_table

Intermediate dbt

Singulartest med Jinja

  • Vi kan använda Jinja i våra tester
    • Funktionen ref
    • Andra efter behov
  • dbt ersätter utdata när testet körs
    • Kör om projektet om din dbt-profil ändras
select *
from {{ ref('order') }}
where order_total < subtotal
Intermediate dbt

Felsökning av tester

  • Använd en SQL-editor för att skapa den inledande testfrågan
  • Placera frågan i rätt fil
  • Se till att ge testet ett unikt namn
  • Använd alternativet dbt test --select <testname>
  • Kontrollera eventuella fel och uppdatera efter behov
Intermediate dbt

Nu kör vi en övning!

Intermediate dbt

Preparing Video For Download...