Vytváření singulárních testů

Intermediate dbt

Mike Metzger

Data Engineer

Co je singulární test?

  • Vlastní datový test
  • Zapsán jako SQL dotaz
    • Musí vracet řádky s chybou
  • Definován jako soubor .sql v adresářích tests

Obrázek testu

1 Photo by Antoine Dautry on Unsplash
Intermediate dbt

Příklad singulárního testu

  • Vytvořte test k ověření:
    • order_total >= subtotal
select *
from order
where order_total < subtotal
  • Pamatujte, chceme řádky, které selžou v testu – pokud jsou vráceny řádky, test selže.
  • Uložte soubor jako assert_order_total_gte_subtotal.sql

Schéma tabulky order

Intermediate dbt

Singulární test s Jinja

  • V testech lze použít Jinja
    • Funkce ref
    • Další dle potřeby
  • dbt nahradí výstup při spuštění testu
    • Znovu spusťte projekt při změně profilu dbt
select *
from {{ ref('order') }}
where order_total < subtotal
Intermediate dbt

Ladění testů

  • Vytvořte počáteční testovací dotaz v SQL editoru
  • Umístěte dotaz do příslušného souboru
  • Pojmenujte test jedinečným názvem
  • Použijte možnost dbt test --select <testname>
  • Zkontrolujte chyby a upravte dotaz
Intermediate dbt

Pojďme procvičovat!

Intermediate dbt

Preparing Video For Download...