ملاحظات حول كورس اختبار البرمجيات باستخدام Pytest

Jul 24, 2024

دراسة حول اختبار البرمجيات باستخدام Pytest

مقدمة

  • كورس يركز على Testing, خاصة في البرمجة بلغة بايثون.
  • أهمية التستنج: التأكد من أن الكود يعمل بشكل صحيح ويحقق المتطلبات.
    • يساعد في اكتشاف الأخطاء مبكرًا.
    • يحسن من جودة الكود وموثوقيته.
    • يوفر الوقت والمال.

محتويات الكورس

  • تعلم كيفية استخدام Pytest.
  • هيكل تصميم الاختبارات.
  • استخدام Assertions لتقييم وظيفة معينة.
  • تشغيل الاختبارات وقراءة تقاريرها.
  • تنظيم الملفات والفونكشنز بشكل مناسب.
  • تطبيق عملي على الفونكشنز والكلاسات:
    • اختبار الفونكشنز والكلاسات.

المتطلبات

  • معرفة أساسية بالبرمجة بلغة بايثون.
  • اهتمام بتعلم جوانب الاختبار وتحسين المهارات البرمجية.

شرح Pytest

  1. تثبيت Pytest:
    • استخدم الأمر pip install pytest.
  2. بدء العمل:
    • كتابة وظيفة تقوم بالتنسيق بين الاسم الأول واسم العائلة.
    • تنفيذ الاختبارات للتأكد من أن الوظيفة تعمل كما هو متوقع.
    • استخدام assertions للاختبار.

التستنج والفونكشنز

  • تعريف اختبار الوحدة (Unit Testing):
    • اختبار جزء معين من الوظيفة والتأكد من أنه يعمل بشكل صحيح.
  • كتابة اختبارات بسيطة لفونكشن get_formatted_name:
    • مثال على assertion لتأكيد المخرجات المتوقعة.

استخدام Fixtures

  • استخدام Fixtures لتجنب تكرار الكود:
    • مثال على كيفية تنظيم الاختبارات باستخدام Fixtures.
    • كيف يمكنك إنشاء كلاس BankAccount واختباره باستخدام Fixtures.

أنواع Assertions

  • شروط متعددة يمكن استخدامها للتحقق من صحة البيانات:
    • assert لجملة شرطية (true/false).
    • اختبار ما إذا كان عنصر في قائمة.
    • اختبار التعادلات والعمليات الرياضية.

الأمثلة العملية

  • تطبيق عملي على BankAccount:
    • اختبار وظائف كما كود الإيداع والسحب.
    • اختبار كيف تتم معالجة الأخطاء (مثل سحب مبلغ أكبر من الرصيد).

تحسين وتوسيع الوظائف

  • كيفية إضافة ميزات جديدة دون تعريض الكود للخطر.
  • مثال على وظيفة جديدة للحصول على الرصيد وتحديث اختباراتها.

الخلاصة

  • التعرف على أهمية التستنج واستخدام Pytest كأساس لتحسين جودة الكود.
  • القدرة على كتابة اختبارات متعددة ومعالجة السيناريوهات المختلفة.