Una breve introduzione al test unitario, al mocking e all'applicazione di patch per principianti
In questa storia, vorrei sollevare una discussione sui test unitari nell'ingegneria dei dati. Sebbene su Internet siano presenti numerosi articoli sugli unit testing di Python, l'argomento sembra un po' vago e scoperto. Parleremo delle pipeline di dati, delle parti di cui sono composte e di come possiamo testarle per garantire una consegna continua. Ogni fase della pipeline di dati può essere considerata come una funzione o un processo e, idealmente, dovrebbe essere testata non solo come unità ma tutta insieme, integrata in un unico processo di flusso di dati. Cercherò di riassumere le tecniche che utilizzo spesso per simulare, applicare patch e testare le pipeline di dati, inclusi integrazione e test automatizzati.
Cos'è il test unitario nel mondo dei dati?
Il test è una parte cruciale di qualsiasi ciclo di vita dello sviluppo software e aiuta gli sviluppatori a garantire che il codice sia affidabile e possa essere facilmente mantenuto in futuro. Considera la nostra pipeline di dati come un insieme di fasi o funzioni di elaborazione. In questo caso, il test unitario può essere considerato come una tecnica di scrittura di test per garantire che ogni unità del nostro codice o ogni passaggio della nostra pipeline di dati non produca risultati indesiderati e sia adatto allo scopo.
In poche parole, ogni passaggio di una pipeline di dati è un metodo o una funzione che deve essere testata.
Le pipeline di dati potrebbero essere diverse. In effetti, spesso variano notevolmente in termini di fonti di dati, fasi di elaborazione e destinazioni finali dei nostri dati. Ogni volta che trasformiamo i dati dal punto A al punto B, esiste una pipeline di dati. Esistono diversi modelli di progettazione (1) e tecniche per costruire questi grafici di elaborazione dei dati e ne ho parlato in uno dei miei articoli precedenti.
Dai un'occhiata a questo semplice esempio di pipeline di dati di seguito. Dimostra uno scenario di caso d'uso comune quando i dati vengono elaborati nel multi-cloud. La nostra pipeline di dati inizia da…
Fonte: towardsdatascience.com