التغطية مفيدة لأنها تظهر أين لم تذهب الاختبارات. تصبح مضللة عندما تعالج الفرق ذلك كدليل على أن النظام آمن.
يمكنك دفع تغطية السطر إلى مستوى عالٍ جدًا وما زلت تفوت السلوكيات التي تؤذي العمل فعليًا:
- أخطاء التفويض
- أخطاء التزامن
- انكسار التكامل
- حالات حافة المجال
## لماذا التغطية مضللة
تجيب التغطية على سؤال ضيق: هل تم تنفيذ هذا الكود خلال تشغيل الاختبار؟
لا تجيب على:
- هل تم إجراء التحقق الصحيح؟
- هل تم ممارسة الفرع الخطير في ظل ظروف واقعية؟
- هل تصرف النظام الخارجي بشكل صحيح؟
يمكن أن تصل خدمة الدفع إلى 95% تغطية وما زالت تكرر الرسوم إذا لم يجري أحد اختبار سلوك إعادة المحاولة مع العقد المطلوب.
## عدسة اختبار أفضل
تستهل استراتيجية الاختبار الجيدة بالمخاطر، وليس بالنسب:
- اختبارات الوحدة للمنطق الأساسي للقرارات
- اختبارات التكامل للحدود الخارجية
- اختبارات السيناريو لقواعد العمل وأوضاع الفشل
- عدد أقل من الاختبارات الشاملة للرحلات الحرجة
التغطية لا تزال مفيدة كخريطة. إنها تساعد على كشف النقاط العمياء. إنها فقط ليست الحكم على الجودة بمفردها.
## قاعدة أفضل
استخدم التغطية للسؤال، "ما هو الكود الذي لا نمارسه؟" لا تستخدمها للمطالبة، "النظام آمن."
## قراءة إضافية
- [مارتن فاولر حول تغطية الاختبار](https://martinfowler.com/bliki/TestCoverage.html)
- [كأس الاختبار](https://kentcdodds.com/blog/the-testing-trophy-and-testing-classifications)