الخلاصة والمصادر
الخلاصة
- 1. الاختبارات الوحدوية: الاختبار الوحدوي يفحص دالة واحدة بمعزل، بسرعة، وبنتيجة ثابتة. اكتب اختبارًا لكل سلوك ولكل خطأ أصلحته.
- 2. اختبارات التكامل: الاختبار الوحدوي يثبت أن القطعة سليمة، واختبار التكامل يثبت أن القطع تتكلم بنفس اللغة. اجعل كل اختبار يبدأ بقاعدة نظيفة.
- 3. الكود النظيف وإعادة الهيكلة: الكود يُقرأ أكثر مما يُكتب. سمِّ الأشياء بما تفعله، واجعل كل دالة تفعل شيئًا واحدًا، ولا تُعِد الهيكلة دون اختبارات.
قاموس المصطلحات
| المصطلح | التعريف | الجزء |
|---|---|---|
| AAA | رتّب، نفّذ، تحقّق: هيكل كل اختبار. | 1 |
| parametrize | تشغيل نفس الاختبار على جدول حالات. | 1 |
| mock | بديل وهمي يسجّل الاستدعاءات بدل الاعتمادية الحقيقية. | 1 |
| اختبار تكامل | يشغّل عدة أجزاء حقيقية معًا. | 2 |
| هرم الاختبارات | كثير وحدوي، أقل تكامل، قليل شامل. | 2 |
| fixture | تجهيز مشترك يُعاد إنشاؤه لكل اختبار. | 2 |
| إعادة الهيكلة | تغيير شكل الكود دون تغيير سلوكه. | 3 |
| العودة المبكرة | الخروج من الدالة عند الحالات الخاصة أولًا لتقليل التداخل. | 3 |
| رقم سحري | رقم بلا اسم في الكود، يُستبدل بثابت مسمّى. | 3 |
مصادر هذا الدرس
مرتّبة بالنوع. ابدأ بالتوثيق الرسمي إذا تبي المرجع الدقيق، وبالمقال أو الفيديو إذا تبي الشرح أولًا.
توثيق رسمي5
pytest: Get startedأول اختبار، والتشغيل، وparametrize وfixtures.docs.pytest.orgPython docs: unittest.mockالبدائل الوهمية والتحقق من الاستدعاءات.docs.python.orgFastAPI: TestingTestClient واستبدال الاعتماديات.fastapi.tiangolo.comTestcontainersقواعد بيانات حقيقية في حاويات مؤقتة للاختبار.testcontainers.comRefactoring catalog (Martin Fowler)قائمة إعادات الهيكلة بأسمائها وخطواتها.refactoring.com
خلّصت الدرس؟
سجّل الدخول ليُحفظ تقدّمك.