Tester une pipeline de données avec des fixtures (tests unitaires)
Vous avez vu dans la dernière vidéo que les tests unitaires permettent d'augmenter la confiance dans votre pipeline de données et d'attraper des bugs tout au long du développement. Dans cet exercice, vous allez vous entraîner à écrire des fixtures et des tests unitaires, en utilisant la bibliothèque pytest et assert.
La fonction transform autour de laquelle vous écrirez des tests unitaires est présentée ci-dessous à titre de référence. pandas a été importé sous le nom pd, et la bibliothèque pytest() est chargée et prête à l'emploi.
def transform(raw_data):
raw_data["tax_rate"] = raw_data["total_taxes_paid"] / raw_data["total_taxable_income"]
raw_data.set_index("industry_name", inplace=True)
return raw_data
Cet exercice fait partie du cours
<cours>ETL et ELT en Python</cours>Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Define a pytest fixture
@pytest.fixture()
____ ____():
raw_data = pd.read_csv("raw_tax_data.csv")
# Transform the raw_data, store in clean_data DataFrame, and return the variable
clean_data = ____
return ____