Модульное тестирование конвейера данных с использованием фикстур
В предыдущем видео вы узнали, что модульное тестирование помогает повысить доверие к конвейеру данных и позволяет выявлять ошибки на этапе разработки. В этом упражнении вы попрактикуетесь в написании фикстур и модульных тестов с использованием библиотеки 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 ____