عرض تقارير نسبة استخدام رموز الصفحة

يمكن لمكوّن إضافي لنظام Gradle المتوافق مع Android إنشاء تقارير حول نسبة استخدام رموز الصفحة تتتبّع النسبة المئوية لرموزك البرمجية التي تغطّيها اختباراتك. توضّح هذه الصفحة كيفية تفعيل ميزة إعداد تقارير التغطية وإنشاء التقارير.

يمكنك إنشاء تقارير تغطية لكل نوع اختبار (وحدة وأدوات) لكل صيغة. يمكنك أيضًا إنشاء تقارير موحّدة حول التغطية في مختلف أنواع الاختبارات والوحدات النمطية وإصدارات الإنشاء.

تفعيل نسبة استخدام رموز الصفحة

يجب تفعيل نسبة استخدام رموز الصفحة من خلال ضبط enableAndroidTestCoverage وenableUnitTestCoverage على true في ملفات الإصدار على مستوى الوحدة لكل صيغة تريد الحصول على تقارير التغطية لها:

Kotlin

android {
    // ...
    buildTypes {
        debug {
            // Enable coverage for unit tests
            enableUnitTestCoverage = true
            // Enable coverage for instrumentation tests
            enableAndroidTestCoverage = true
        }
    }
}

أنيق

android {
    // ...
    buildTypes {
        debug {
            // Enable coverage for unit tests
            enableUnitTestCoverage true
            // Enable coverage for instrumentation tests
            enableAndroidTestCoverage true
        }
    }
}

تغيير إصدار Jacoco (اختياري)

تطبِّق "إضافة Android Gradle" أداة Jacoco تلقائيًا عند تفعيل التغطية في الوحدات. ومع ذلك، إذا كنت بحاجة إلى استخدام إصدار معيّن من Jacoco، يمكنك تحديده في ملف التصميم على مستوى الوحدة:

Kotlin

android {
    testCoverage {
        jacocoVersion = "JACOCO_VERSION"
    }
}

أنيق

android {
    testCoverage {
        jacocoVersion = 'JACOCO_VERSION'
    }
}

إنشاء تقارير تغطية خاصة بإصدارات التطبيق

لإنشاء تقارير التغطية لاختبارات الوحدات فقط أو الاختبارات المزوّدة بأدوات فقط لمتغير معيّن، شغِّل المهام المناسبة.

نوع الاختبار الأمر الإبلاغ عن الموقع الجغرافي
اختبارات الوحدات ./gradlew :module-name:createVariantNameUnitTestCoverageReport path-to-your-project/module-name/build/reports/coverage/test/variant/index.html
اختبارات لقياس حالة التطبيق ./gradlew :module-name:createVariantNameAndroidTestCoverageReport path-to-your-project/module-name/build/reports/coverage/androidTest/variant/connected/index.html

إنشاء تقارير موحَّدة حول نسبة استخدام رموز الصفحة

يمكنك إنشاء تقارير موحّدة لنسبة استخدام رموز الصفحة باستخدام مهمتَي Gradle testAllSuites وtestAllSuitesWithDependencies. ستؤدي هذه المهام إلى إنشاء تقرير HTML واحد يدمج بيانات التغطية من أنواع الاختبارات المختلفة (الوحدة والاختبارات الآلية)، والوحدات، ومتغيرات الإصدار. يوفّر ذلك عرضًا شاملاً لنسبة استخدام رموز الصفحة في مشروعك ضمن لوحة بيانات واحدة.

المتطلبات الأساسية

لإنشاء تقرير موحّد، نفِّذ إحدى المهام التالية من سطر الأوامر:

نطاق التغطية الأمر الوصف الإبلاغ عن الموقع الجغرافي
الوحدة الحالية ./gradlew :module-name:testAllSuites تختبر جميع مجموعات الاختبار، وتنشئ تقرير تغطية موحّدًا للوحدة الحالية، وتدمج البيانات من جميع أنواع الاختبارات. path-to-your-project/module-name/build/reports/code_coverage_html_report/
الوحدة الحالية والوحدات التابعة ./gradlew :module-name:testAllSuitesWithDependencies يختبر جميع مجموعات الاختبارات، وينشئ تقرير تغطية موحّدًا للوحدة الحالية وجميع التبعيات. تتوفّر هذه المهمة لوحدات التطبيق ووحدات المكتبة التي تم تفعيل النشر فيها. path-to-your-project/module-name/build/reports/aggregated_code_coverage_html_report/

تعرض الصفحة المقصودة لتقرير HTML الذي تم إنشاؤه ملخّصًا عالي المستوى لجميع الوحدات. يمكنك الانتقال من الوحدة إلى الحزمة، ومن الحزمة إلى الفئة، ومن الفئة إلى ملف المصدر. انقر على أي ملف للاطّلاع على الرمز مع تمييز تغطية الأسطر والفروع:

  • أخضر: الأسطر التي تمّت تغطيتها
  • أحمر: الأسطر غير المغطّاة
  • الأصفر: تغطية جزئية (تعذّر تنفيذ بعض التعليمات أو الفروع).