Testowanie jednostkowe potoku danych z użyciem fixtures
Z poprzedniego materiału wiesz już, że testowanie jednostkowe zwiększa wiarygodność potoku danych i pomaga wychwytywać błędy na etapie tworzenia. W tym ćwiczeniu przećwiczysz pisanie fixtures oraz testów jednostkowych z użyciem biblioteki pytest i instrukcji assert.
Funkcja transform, wokół której napiszesz testy jednostkowe, jest pokazana poniżej dla odniesienia. Biblioteka pandas została zaimportowana jako pd, a biblioteka pytest jest załadowana i gotowa do użycia.
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
To ćwiczenie jest częścią kursu
ETL i ELT w Pythonie
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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 ____