Юніт-тестування конвеєра даних із фікстурами
У попередньому відео ви дізналися, що юніт-тестування допомагає підвищити довіру до вашого конвеєра даних і навіть виявляти помилки під час розробки. У цій вправі ви попрактикуєтеся писати і фікстури, і юніт-тести, використовуючи бібліотеку 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 ____