Юніт-тестування конвеєра даних із fixture'ами
У попередньому відео ви дізналися, що юніт-тестування допомагає більше довіряти вашому конвеєру даних і навіть дозволяє знаходити помилки під час розробки. У цій вправі ви попрактикуєтеся писати і fixture'и, і юніт-тести, використовуючи бібліотеку pytest і assert.
Функція transform, навколо якої ви писатимете юніт-тести, наведена нижче для довідки. pandas імпортовано як pd, а бібліотеку pytest() завантажено й готово до використання.
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
Ця вправа є частиною курсу
ETL та ELT у Python
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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 ____