Python Academy · درس

اختبار الوحدات باستخدام unittest

اكتشف كيفية كتابة اختبارات للتحقق من صحة شيفرتك

الدرس 1 من 311 خطوة

اختبار الوحدات باستخدام unittest درس مجاني في Python Academy على CoddyKit. هذا هو الدرس 1 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Python Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Python Academy 3 دروس في المجموع.

اختبار الوحدات باستخدام unittest

اختبار الوحدات هو أسلوب لاختبار وحدات منفردة من الشيفرة للتأكد من أنها تعمل كما هو متوقع. وتُعدّ وحدة Python unittest مكتبة مضمّنة لإنشاء اختبارات الوحدات وتشغيلها.

في هذا الدرس، ستتعلّمون كيفية إنشاء اختبارات الوحدات وتنفيذها باستخدام إطار العمل 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
البدء مجانًا

تعلم Python مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
76
الدروس
320

الأسئلة الشائعة

هل درس «اختبار الوحدات باستخدام unittest» مجاني؟

نعم — نص درس «اختبار الوحدات باستخدام unittest» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Python Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Python Academy 3 دروس في المجموع.

ماذا ستتعلم في «اختبار الوحدات باستخدام unittest»؟

اكتشف كيفية كتابة اختبارات للتحقق من صحة شيفرتك تتمرن على Python Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Python Academy؟

لا تُشترط خبرة سابقة. Python Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 3.

كم من الوقت يستغرق درس «اختبار الوحدات باستخدام unittest»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Python Academy هذا؟

نعم. كل درس في Python Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. اختبار الوحدات باستخدام unittest
  2. تقنيات تصحيح الأخطاء
  3. استخدام أدوات تصحيح الأخطاء
← العودة إلى Python Academy