เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การเขียน unit test ด้วย pytest

ในแบบฝึกหัดนี้ จะได้ฝึกเขียน unit test เพื่อตรวจสอบความถูกต้องของ data pipeline โดยใช้ assert และเครื่องมืออื่น ๆ เพื่อสร้างการทดสอบและตรวจสอบว่า data pipeline ทำงานได้ตามที่คาดหวังหรือไม่

ฟังก์ชัน extract() และ transform() ถูกเตรียมไว้ให้แล้ว พร้อมกับ pandas ที่ import มาในชื่อ pd โดยจะทดสอบฟังก์ชัน transform() ซึ่งแสดงไว้ด้านล่าง

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

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

ETL และ ELT ด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • Import ไลบรารี pytest
  • ใช้ assert เพื่อตรวจสอบว่าค่าที่เก็บในตัวแปร clean_tax_data เป็น instance ของ pd.DataFrame
  • ตรวจสอบว่าจำนวนคอลัมน์ใน DataFrame clean_tax_data มากกว่าจำนวนคอลัมน์ใน DataFrame raw_tax_data

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

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)
แก้ไขและรันโค้ด