BaşlayınÜcretsiz Başlayın

pytest ile birim testleri yazma

Bu egzersizde, bir veri hattını (data pipeline) doğrulamak için bir birim testi yazmayı pratik edeceksin. Testleri oluşturmak için assert ve diğer araçları kullanacak ve veri hattının olması gerektiği gibi çalışıp çalışmadığını belirleyeceksin.

pandas kütüphanası pd olarak içe aktarılmış durumda ve extract() ile transform() fonksiyonları sana hazır verildi. Aşağıda gösterilen transform() fonksiyonunu test edeceksin.

def transform(raw_data):
    raw_data["average_taxable_income"] = raw_data["total_taxable_income"] / raw_data["number_of_firms"]
    clean_data = raw_data.loc[raw_data["average_taxable_income"] > 100, :]
    clean_data.set_index("industry_name", inplace=True)
    return clean_data

Bu egzersiz

Python ile ETL ve ELT

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • pytest kütüphanesini içe aktar.
  • clean_tax_data değişkeninde saklanan değerin bir pd.DataFrame örneği olduğunu assert ile doğrula.
  • clean_tax_data DataFrame’indeki sütun sayısının, raw_tax_data DataFrame’inde saklanan sütun sayısından büyük olduğunu doğrula.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

import ____

def test_transformed_data():
    raw_tax_data = extract("raw_tax_data.csv")
    clean_tax_data = transform(raw_tax_data)
    
    # Assert that the transform function returns a pd.DataFrame
    assert ____(clean_tax_data, pd.DataFrame)
    
    # Assert that the clean_tax_data DataFrame has more columns than the raw_tax_data DataFrame
    ____ len(clean_tax_data.columns) ____ len(raw_tax_data.columns)
Kodu Düzenle ve Çalıştır