כתיבת בדיקת מעטפת ב-Trade Federation

בדף הזה מוסבר איך לכתוב בדיקת Shell. אם אפשר לבצע בדיקה באמצעות סקריפט shell, אפשר להריץ אותה באמצעות ExecutableHostTest. ‫ExecutableHostTest תומך בסינון בדיקות ובחלוקת בדיקות.

כתיבת בדיקה של מעטפת

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

אם הבדיקה כוללת מודולים בינאריים של מכשירים שצריך להתקין לצד הבדיקה, מציינים אותם באמצעות המאפיין data_device_bins.

sh_test {
    name: "module-name",
    ...
    data_device_bins: ["target-name"],
}

דוגמה לכך היא בדיקת מעטפת ziptool-tests.

תוצאת הבדיקה של כל בדיקה מבוססת על סטטוס היציאה של הסקריפט הראשי. הבדיקה יכולה להסתיים לפני הזמן אם צוין per-binary-timeout.

הגדרת בדיקה של מעטפת

בהגדרת XML של Tradefed, בדיקות shell מופעלות באמצעות רכיב ExecutableHostTest runner.

<test class="com.android.tradefed.testtype.binary.ExecutableHostTest" >
    <option name="binary" value="your-test-script.sh" />
    <option name="relative-path-execution" value="true" />
    <option name="per-binary-timeout" value="15m" />
</test>

מגדירים את הסקריפט הראשי של הבדיקה כערך של האפשרות binary. כדאי לעיין באפשרויות אחרות של ExecutableHostTest.

אם הסקריפט דורש הרשאת root, מוסיפים את RootTargetPreparer להגדרה.