پوشش کد چیست؟#

ابزارهای Code Coverage (مانند Istanbul یا JaCoCo) کدهای شما را هنگام تست رصد می‌کنند. اگر تابعی شامل ۵۰ خط باشد و تست‌های شما فقط ۴۰ خط آن را فراخوانی کنند، پوشش کد ۸۰٪ ثبت می‌شود. این ابزار دقیقاً خطوط قرمزی که هیچ تستی ندارند را به شما نشان می‌دهد.

یک تشبیه روزمره#

نقاشی کردن دیوار اتاق؛ با غلتک رنگ دیوار را رنگ می‌زنید و لامپ یووی را روشن می‌کنید تا مشخص شود کدام گوشه‌های دیوار هنوز رنگ نخورده و سفید مانده‌اند!

چهار شاخص پوشش#

  • پوشش خطوط (Line Coverage): درصد خطوط اجرا شده
  • پوشش شاخه‌ها (Branch Coverage): درصد شروط if/else بررسی شده
  • پوشش توابع (Function Coverage): درصد توابع صدا زده شده
  • پوشش بیانیه‌ها (Statement Coverage)