מבנה ברמה גבוהה של תצורת XML של נתונים מסחריים

ההגדרות של transactionFed מופיעות במבנה XML כדי לתאר את הבדיקה להרצה. ואת שלבי ההכנה/ההגדרה לבצע.

בתיאוריה, אפשר להגדיר הכול ב-XML עבור פקודה אחת. אבל בתוך מעשית יותר ליצור קובצי XML של תבנית בסיסית ולהתאים אותם אישית באמצעות פרמטרים נוספים של שורת הפקודה.

מבנה

<configuration description="<description of the configuration>">
    <!-- A build provider that takes local device information -->
    <build_provider class="com.android.tradefed.build.BootstrapBuildProvider" />

    <!-- Some target preparation, disabled by default -->
    <target_preparer class="com.android.tradefed.targetprep.PreloadedClassesPreparer">
        <option name="disable" value="true" />
    </target_preparer>

    <!-- One test running some unit tests -->
    <test class="com.android.tradefed.testtype.HostTest">
        <option name="class" value="com.android.tradefed.build.BuildInfoTest" />
    </test>

    <!-- [OPTIONAL] -->
    <logger class="com.android.tradefed.log.FileLogger">
        <option name="log-level" value="VERBOSE" />
        <option name="log-level-display" value="VERBOSE" />
    </logger>

    <!-- [OPTIONAL] -->
    <log_saver class="com.android.tradefed.result.FileSystemLogSaver" />

    <!-- As many reporters as we want -->
    <result_reporter class="com.android.tradefed.result.ConsoleResultReporter" />
    <result_reporter class="com.android.tradefed.result.suite.SuiteResultReporter" />
    <result_reporter class="com.android.tradefed.result.MetricsXMLResultReporter"/>
</configuration>

קובץ ה-XML הכולל שכולל נתונים מסחריים מופרד באמצעות תגי <configuration>. Tradefed objects מוגדרים בתגים משלהם, לדוגמה: build_provider, target_preparer, test וכו'. המטרות הנפרדות שלהם מתוארות במידע נוסף הפרטים בארכיטקטורה .

לכל אובייקט יש מחלקה של Java שמשויכת לאובייקט שמוגדר ב-class= שנפתר בזמן הריצה, כל עוד קובץ ה-JAR שמכיל את המחלקה בנתיב ה-classpath Java שמזינים בזמן ההרצה, הוא יאותר ויפתור את הבעיה.

סידור של אובייקטים שמזינים במסחר

הסדר של התגים השונים לא משנה. לדוגמה, הוא לא קובע ההפרש אם צוין build_provider אחרי target_preparer. הזרימה של הפעלת הבדיקה נאכפת על ידי הרתמה עצמה, כך שהיא תמיד בסדר הנכון.

יש חשיבות לסדר האובייקטים עם אותו תג. לדוגמה, שתיים תתבצע קריאה ל-target_preparer אובייקטים שהוגדרו לפי סדר ההגדרה שלהם ב- את ה-XML. חשוב להבין את זה כי זה יכול לשנות את מצב הסיום של בהגדרת המכשיר. לדוגמה, הבהוב לאחר התקנת APK לא יהיה זהה להתקנת APK והבהוב מכיוון שהפלאש ימחק את המכשיר.