Crearea testelor singulare

dbt intermediar

Mike Metzger

Data Engineer

Ce este un test singular?

  • Test de date personalizat
  • Scris ca o interogare SQL
    • Trebuie să returneze rândurile care eșuează
  • Definit ca fișier .sql în directoarele tests

Imagine test

1 Photo by Antoine Dautry on Unsplash
dbt intermediar

Exemplu de test singular

  • Creați un test pentru a verifica:
    • order_total >= subtotal
select *
from order
where order_total < subtotal
  • Rețineți: dorim rândurile care eșuează testul — dacă sunt returnate rânduri, testul eșuează.
  • Salvați fișierul ca assert_order_total_gte_subtotal.sql

Diagrama schemei tabelului order

dbt intermediar

Test singular cu Jinja

  • Putem folosi Jinja în teste
    • Funcția ref
    • Altele, după caz
  • dbt substituie (înlocuiește) rezultatul la rularea testului
    • Rerulați proiectul dacă profilul dbt se modifică
select *
from {{ ref('order') }}
where order_total < subtotal
dbt intermediar

Depanarea testelor

  • Folosiți un editor SQL pentru a crea interogarea de test inițială
  • Plasați interogarea în fișierul corespunzător
  • Asigurați-vă că testul are un nume unic
  • Folosiți opțiunea dbt test --select <testname>
  • Verificați erorile și actualizați corespunzător
dbt intermediar

Să exersăm!

dbt intermediar

Preparing Video For Download...