القوالب وتتضمن تكوين Tradefed XML

إن إنشاء تكوين XML متجانس واحد لتعريف الاختبار ليس أمرًا عمليًا دائمًا. إذا كنت تريد إعادة استخدام جزء من الإعداد لإجراء اختبارات مماثلة، فسوف تضطر إلى نسخ ملفين XML عملاقين والاحتفاظ بهما.

هذا هو المكان الذي يصبح فيه template include العلامات في تعريف تكوين Tradefed XML مفيدًا. إنها تسمح لك بتعيين العناصر النائبة في بعض تكوينات XML لإضافة جزء من تكوين XML آخر.

تعريف المثال للقوالب

<configuration description="Common base configuration for local runs with minimum overhead">
    <build_provider class="com.android.tradefed.build.BootstrapBuildProvider" />

    <template-include name="preparers" default="empty" />

    <template-include name="test" default="empty" />

    <template-include name="reporters" default="empty" />
</configuration>

القوالب عبارة عن عناصر نائبة تحتوي على name للإشارة إليها، بالإضافة إلى حقل default اختياري. يحدد الحقل الافتراضي ملف XML البديل الافتراضي الذي يجب استخدامه.

من أجل استبدال قالب لتكوين معين، يجب إضافة معلمة الأمر التالية إلى سطر الأوامر:

--template:map <name of template>=<replacement XML config path>

--template:map preparers=empty

على سبيل المثال:

<template-include name="preparers" default="empty" />

يشير المرجع empty في هذه الحالة إلى تكوين empty.xml الذي لا يحتوي على أي شيء؛ نستخدمه كمرجع لنا للاستبدال بلا شيء .

يمكن أن يكون مسار تكوينات XML مطلقًا أو متعلقًا بمجلد res/config داخل موارد JAR الخاصة بـ Tradefed. فيما يلي بعض مواقعهم:

  • أدوات/الاتحاد التجاري/الأساسية/الدقة/config
  • أدوات/الاتحاد التجاري/الأساسية/الاختبارات/الدقة/config
  • أدوات/التأجيل التجاري/المساهمة/res/config

تعريف المثال يتضمن

<configuration description="Common base configuration for local runs with minimum overhead">
    <build_provider class="com.android.tradefed.build.BootstrapBuildProvider" />

    <include name="empty"/>
</configuration>

تعتبر التضمينات أبسط من القوالب لأنها لا تتطلب أي وسيطات لسطر الأوامر؛ يقومون مباشرة بتوسيع XML المشار إليه في علامة name . كما هو الحال مع القوالب، يمكن أن يكون المسار إلى التكوين مطلقًا أو نسبيًا. ومع ذلك، بالنسبة includes ، نوصي باستخدام المسارات النسبية فقط لأنها أكثر قابلية للنقل في Tradefed. لن تكون المسارات المطلقة صالحة إذا تم نقل Tradefed إلى جهاز آخر.

التكوين الخاطئ

في حالة التكوين الخاطئ، كما هو الحال عندما لا يمكن العثور على ملف XML البديل، ستقوم Tradefed بطرح ConfigurationException مع وصف لما يبدو أنه مفقود أو تم تكوينه بشكل خاطئ.