اختبارات مضيف JAR

يجب تنفيذ اختبارات مضيف أرشيف Java (JAR) لتوفير التعليمات البرمجية الكاملة تغطية برنامجك. اتّبِع تعليمات إنشاء وحدة محلية. الاختبارات. اكتب اختبارات وحدة صغيرة للتحقّق من صحة وظيفة معيّنة وليس أكثر من ذلك.

مثال

يقدّم ملف المخطط التالي مثالاً بسيطًا على اختبار مضيف Hello World JAR. لنسخها والتكيّف مع احتياجاتك: platform_testing/tests/example/jarhosttest/Android.bp

ويتوافق هذا مع رمز الاختبار الفعلي الذي تم العثور عليه في: platform_testing/tests/example/jarhosttest/test/android/test/example/helloworld/HelloWorldTest.java

يتم تضمين لقطة من ملف المخطط هنا لتسهيل الأمر:

java_test_host {
    name: "HelloWorldHostTest",

    test_suites: ["general-tests"],

    srcs: ["test/**/*.java"],

    static_libs: [
        "junit",
        "mockito",
    ],
}

يشير بيان java_test_host في البداية إلى أنّ هذا الملف هو JAR. اختبار المضيف. يمكنك الاطّلاع على مثال على استخدامها في: frameworks/base/tools/powermodel/Android.bp

الإعدادات

انظر أدناه للاطّلاع على توضيحات للإعدادات التالية:

  • يكون إعداد name مطلوبًا عند تحديد نوع الوحدة java_test_host (في بداية الكتلة). يعطي هذا الإعداد اسمًا ويحمل ملف JAR الناتج الاسم نفسه واللاحقة .jar. في جلسة المعمل، في المثال أدناه، يُطلق على نتيجة الاختبار JAR اسم HelloWorldHostTest.jar. ضِمن بالإضافة إلى ذلك، يقوم هذا الإعداد أيضًا بتحديد اسم هدف للوحدة، بحيث يمكنك استخدام make [options] <HelloWorldHostTest> لإنشاء الاختبار الوحدة وجميع تبعياتها.

    name: "HelloWorldHostTest",
    
  • يسهّل الإعداد test_suites العثور على الاختبار بواسطة منصة التجارة. مفعِّل اختبار الاتحاد. يمكن إضافة مجموعات اختبار أخرى هنا، مثل CTS لكي تتم مشاركة اختبار مضيف JAR.

    test_suites: ["general-tests"],
    
  • يوجّه الإعداد static_libs نظام الإنشاء إلى دمج محتويات الوحدات المُسمّاة في حزمة APK الناتجة عن الوحدة الحالية. وهذا يعني أنّه من المتوقّع أن تنتج عن كل وحدة معني ملف .jar. ويُستخدم محتوى الوحدة لحل مراجع مسار الفئة أثناء وقت التجميع ودمجها في حزمة APK الناتجة.

    static_libs: [
        "junit",
    ],