מצב ערכת בדיקה הוא תכונה שנוספה ל-Android 10 למפתחי אפליקציות של צד שלישי שרוצים להפוך מכשיר או צי של מכשירים לאוטומטיים. התכונה מספקת שיטה למחיקת כל נתוני המשתמש במכשיר Android, לשמירת מפתחות ADB ולדילוג על כל מסכי ההגדרה הראשונית. כך המשתמש יכול להריץ בדיקת ממשק משתמש מיד אחרי ההפעלה, בלי אינטראקציה ידנית.
התאמה אישית
כדי לדעת אם המכשיר נמצא במצב 'מסגרת בדיקה', צריך לבדוק את
ActivityManager.isRunningInUserTestHarness()
. כדאי לצמצם את ההתאמות אישיות למינימום, ולהסתפק בדברים כמו דילוג על מסכי הגדרה (במקלדת או באשף ההגדרה) שעלול לשבש את בדיקות ממשק המשתמש או לדרוש אינטראקציה ידנית.
הטמעה
הטמעת ברירת המחדל של PersistentDataBlockManagerInternal
היא ב-PersistentDataBlockService
.
מצב מסגרת הבדיקה מוטמע ב-TestHarnessModeService
.
בהטמעת ברירת המחדל של מצב 'מסגרת בדיקה' נעשה שימוש באותו מנגנון אחסון כמו בהגנה מפני איפוס להגדרות היצרן, כדי לאחסן את מפתחות ה-adb באופן זמני במחיצה קבועה. אם כבר הטמעתם במכשיר הבדיקה מחיצה קבועה עם הגנה מפני איפוס להגדרות המקוריות, לא תצטרכו לבצע הרבה עבודה כדי לתמוך בתכונה.
יצרני ציוד מקורי שלא הגדרו מחיצה קבועה צריכים להטמיע את PersistentDataBlockManagerInternal
לפני שהם מריצים את TestHarnessModeService
.
בדיקת הסטטוס של מצב 'מסגרת בדיקה'
כשמצב 'מסגרת בדיקה' מופעל, הפונקציה ActivityManager.isRunningInUserTestHarness()
מחזירה את הערך true
.
הפעלת מצב מסגרת בדיקה
הפעלת מצב מסגרת הבדיקה מוחקת את כל הנתונים מהמכשיר ומגדירה אותו לבדיקה. המשמעות היא שכל החלקים במכשיר שעלולים להפריע לבדיקה (כמו סנכרון אוטומטי של חשבונות, אימות חבילות ועדכונים אוטומטיים) מושבתים כברירת מחדל, אבל המשתמש יכול להפעיל אותם מחדש.
מריצים את הפקודה adb
כדי להפעיל את מצב 'מסגרת בדיקה':
adb shell cmd testharness enable