0Pricing
Python For Kids · บทเรียน

การทดสอบหน่วยด้วย unittest

ค้นพบวิธีเขียนการทดสอบเพื่อตรวจสอบโค้ดของคุณ

การทดสอบหน่วยด้วย unittest เป็นบทเรียน Python For Kids ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python For Kids และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python For Kids มีบทเรียนทั้งหมด 3 บทเรียน

การทดสอบหน่วยด้วย unittest

การทดสอบหน่วยคือวิธีทดสอบหน่วยย่อยของโค้ดแต่ละหน่วยเพื่อให้แน่ใจว่าทำงานได้ตามที่คาดไว้ โมดูล unittest ของ Python เป็นไลบรารีในตัวสำหรับสร้างและเรียกใช้การทดสอบหน่วย

ในบทเรียนนี้ คุณจะได้เรียนรู้วิธีสร้างและเรียกใช้การทดสอบหน่วยโดยใช้เฟรมเวิร์ก unittest

การทดสอบหน่วยด้วย unittest — ภาพประกอบ 1

การทดสอบหน่วยคืออะไร

การทดสอบหน่วยคือการทดสอบฟังก์ชันหรือเมธอดแต่ละรายการแบบแยกจากกัน เพื่อให้มั่นใจว่าทำงานได้อย่างถูกต้อง ช่วยตรวจพบข้อบกพร่องได้ตั้งแต่ระยะแรกของกระบวนการพัฒนาและช่วยให้โค้ดมีความน่าเชื่อถือ

การตั้งค่า unittest

โมดูล unittest รวมอยู่ในไลบรารีมาตรฐานของ Python ดังนั้นคุณไม่จำเป็นต้องติดตั้งอะไรเพิ่มเติม หากต้องการใช้ ให้ импортโมดูลและสร้างกรณีทดสอบโดยสืบทอดจาก unittest.TestCase

# Setting up unittest
import unittest

class TestExample(unittest.TestCase):
    def test_addition(self):
        self.assertEqual(1 + 1, 2)  # Passes

if __name__ == '__main__':
    unittest.main()

การเขียนกรณีทดสอบ

หากต้องการเขียนกรณีทดสอบ ให้กำหนดเมธอดในคลาสทดสอบของคุณ เมธอดแต่ละรายการควรขึ้นต้นด้วย test_ เพื่อให้เฟรมเวิร์ก unittest ตรวจพบว่าเป็นกรณีทดสอบ

# Writing test cases
class TestMathOperations(unittest.TestCase):
    def test_multiplication(self):
        self.assertEqual(2 * 3, 6)  # Passes

การเรียกใช้การทดสอบ

เรียกใช้การทดสอบโดยเรียกใช้สคริปต์ที่มีกรณีทดสอบของคุณ เฟรมเวิร์ก unittest จะค้นหาและเรียกใช้เมธอดทดสอบทั้งหมดโดยอัตโนมัติ

# Running tests
# Save this file and run it using:
# python test_script.py

การตรวจสอบยืนยันที่พบบ่อย

โมดูล unittest มีเมธอดสำหรับตรวจสอบยืนยันหลายรายการ:

  • assertEqual(a, b): ตรวจสอบว่า a เท่ากับ b หรือไม่
  • assertTrue(x): ตรวจสอบว่า x เป็นจริงหรือไม่
  • assertIn(a, b): ตรวจสอบว่า a อยู่ใน b หรือไม่
  • assertRaises(exception): ตรวจสอบว่ามีการยกข้อยกเว้นหรือไม่

การทดสอบกรณีขอบ

การทดสอบกรณีขอบ เช่น อินพุตว่าง ตัวเลขขนาดใหญ่ หรือข้อมูลที่ไม่ถูกต้อง เป็นสิ่งสำคัญเพื่อให้แน่ใจว่าโค้ดของคุณมีความทนทาน

# Testing edge cases
class TestEdgeCases(unittest.TestCase):
    def test_empty_input(self):
        self.assertEqual(len([]), 0)  # Passes

การจัดระเบียบไฟล์ทดสอบ

สำหรับโครงการขนาดใหญ่ ให้จัดระเบียบกรณีทดสอบไว้ในโฟลเดอร์แยกต่างหาก ซึ่งโดยทั่วไปตั้งชื่อว่า tests/ และตั้งชื่อไฟล์ทดสอบโดยใช้คำนำหน้า test_

ข้อผิดพลาดที่พบบ่อยในการใช้ unittest

ต่อไปนี้คือข้อผิดพลาดที่ควรหลีกเลี่ยง:

  • ไม่ตั้งชื่อเมธอดทดสอบโดยใช้คำนำหน้า test_
  • ลืมจัดการกรณีขอบเขตในกรณีทดสอบ
  • ไม่เรียกใช้การทดสอบเป็นประจำระหว่างการพัฒนา

เราเรียนรู้อะไรไปบ้าง

ในบทเรียนนี้ คุณได้เรียนรู้:

  • การทดสอบหน่วยคืออะไรและเหตุใดจึงสำคัญ
  • วิธีใช้โมดูล unittest เพื่อเขียนและเรียกใช้กรณีทดสอบ
  • การตรวจสอบยืนยันทั่วไปที่มีอยู่ในเฟรมเวิร์ก unittest
  • แนวทางปฏิบัติที่ดีในการจัดระเบียบไฟล์ทดสอบและจัดการกรณีขอบเขต

ทำได้ดีมาก ไปต่อยังหัวข้อถัดไปกันเถอะ

การทดสอบหน่วยด้วย unittest — ภาพประกอบ 11

คำถามที่พบบ่อย

บทเรียน “การทดสอบหน่วยด้วย unittest” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การทดสอบหน่วยด้วย unittest” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python For Kids ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python For Kids มีบทเรียนทั้งหมด 3 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การทดสอบหน่วยด้วย unittest”

ค้นพบวิธีเขียนการทดสอบเพื่อตรวจสอบโค้ดของคุณ คุณปฏิบัติ Python For Kids ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python For Kids หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Python For Kids บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน

บทเรียน “การทดสอบหน่วยด้วย unittest” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Python For Kids นี้ได้ไหม

ได้ บทเรียน Python For Kids ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การทดสอบหน่วยด้วย unittest
  2. เทคนิคการดีบัก
  3. การใช้เครื่องมือดีบัก
← กลับไปที่ Python For Kids