בדיקת Robo היא כלי בדיקה שמשולב ב-Firebase Test Lab. בדיקת Robo מנתחת את המבנה של ממשק המשתמש של האפליקציה, ואז בודקת אותו באופן שיטתי, תוך סימול אוטומטי של פעילויות משתמשים. כשמשתמשים בבדיקת Robo כדי לבדוק אפליקציה בתצורת מכשיר ספציפית עם אותן הגדרות, בדיקת Robo תמיד תבצע סימולציה של אותן פעולות משתמשים באותו סדר. הגישה הזו מאפשרת להשתמש בבדיקת Robo כדי לאמת תיקוני באגים ולבדוק רגרסיות.
במהלך הבדיקה, Robo מתעד קובצי יומן, שומר סדרה של צילומי מסך עם הערות, ואז יוצר מהם סרטון כדי להציג את פעולות המשתמש המדומה שהוא ביצע. היומנים, צילומי המסך והסרטונים האלה יכולים לעזור לכם לקבוע את שורש הבעיה של קריסות האפליקציה. התכונות האלה של בדיקת Robo יכולות לעזור לכם גם למצוא בעיות בממשק המשתמש של האפליקציה.
בנוסף להרצת בדיקות Robo רגילות, אפשר להתאים אישית את הבדיקות באמצעות סקריפטים של Robo, שהם תכונה של בדיקות Robo. מידע נוסף זמין במאמר בנושא הרצת סקריפט Robo.
אם רוצים לנסות את גרסת הבטא של Robo ל-iOS+, אפשר לעיין במאמר בנושא הרצת בדיקת Robo.
נתונים סטטיסטיים של סריקה בבדיקת Robo
כדי לעזור לכם לפרש את תוצאות הבדיקה של Robo, הכלי מתעד נתונים סטטיסטיים במהלך כל סריקה של הבדיקה. Test Lab הנתונים הסטטיסטיים מוצגים בחלק העליון של הכרטיסייה 'בדיקת Robo' בדף תוצאות הבדיקה:
פעולות: המספר הכולל של הפעולות שבוצעו במהלך הסריקה, כולל פעולות של סקריפט Robo, פעולות של Monkey והוראות Robo.
פעילויות: מספר הפעילויות השונות שנכללו בסריקה.
מסכים: מספר המסכים השונים שהרובוט ביקר בהם במהלך הסריקה.
Test Lab משתמש גם בנתונים הסטטיסטיים כדי ליצור ייצוג חזותי של בדיקת הרובוט בצורה של תרשים סריקה. המסכים הם הצמתים בתרשים והפעולות הן הקשתות. אם עוקבים אחרי הקצוות בין המסכים, אפשר להבין איך בדיקת Robo עברה באפליקציה במהלך הסריקה.
פסק זמן של בדיקת Robo
בהתאם למורכבות של ממשק המשתמש של האפליקציה, יכול להיות שיידרשו חמש דקות או יותר כדי להשלים סדרה מקיפה של אינטראקציות עם ממשק המשתמש. מומלץ להגדיר את הזמן הקצוב לתפוגה של בדיקת Robo ל-120 שניות (2 דקות) לפחות עבור רוב האפליקציות, ול-300 שניות (5 דקות) עבור אפליקציות מורכבות למדי. ערך ברירת המחדל של הזמן הקצוב לתפוגה הוא 300 שניות (5 דקות) לבדיקות שמופעלות מ-Android Studio וממסוף Firebase, ו-900 שניות (15 דקות) לבדיקות שמופעלות משורת הפקודה של gcloud.
שגיאות שקשורות לזמן הקצוב לתפוגה של הפעלת האפליקציה
אם האפליקציה שלכם נפתחת לאט, יכול להיות שבדיקת Robo תציג שגיאה ולא תוכל לסרוק את האפליקציה. זה קורה רק במקרים של זמן פתיחה ארוך במיוחד, והפתרון היחיד הוא לשנות את האפליקציה כך שהיא תיפתח מהר יותר.
יותר שליטה עם סקריפטים של Robo
לפעמים צריך יותר שליטה בבדיקות. לדוגמה, יכול להיות שתרצו לבדוק תרחיש נפוץ של משתמש או לספק קלט ספציפי לממשק המשתמש, כמו שם משתמש וסיסמה. תסריטי Robo יכולים לעזור. מידע נוסף על תסריטי Robo זמין במאמרים הרצת תסריט Robo ומדריך לעיון בתסריטי Robo.
בדיקות Robo ווידג'טים של ממשק משתמש שאינם Android
בבדיקות Robo נעשה שימוש ב-Android API כדי לבצע פעולות בווידג'טים של ממשק המשתמש של Android באופן ישיר. כך הבדיקות יכולות לחקור את ממשק המשתמש באופן אוטומטי, אבל זה גם אומר שהן צריכות להיות מסוגלות לחלץ היררכיית ממשק משתמש של Android למסך כדי להריץ עליו בדיקות.
אם מסך באפליקציה לא משתמש בווידג'טים של ממשק משתמש של Android, בדיקות Robo חוזרות לפעולות Monkey כדי לבדוק את המסך הזה. בניגוד לפעולות הבדיקה של Robo, שהן יותר שיטתיות, Monkey Actions פשוט מדמות אירועי הקשה במיקומים אקראיים למחצה במסך של מכשיר.
כדי לבדוק טוב יותר מסכים שלא משתמשים בווידג'טים של ממשק המשתמש של Android, אפשר להחליף את ההקשות האקראיות של פעולת Monkey בסדרה של הקשות ואינטראקציות מתוסרטות באמצעות Firebase Test Lab בדיקות של לולאות משחק.
שילוב עם Google Play
אפשר להשתמש בבדיקת Robo ב-Google Play Console כשמעלים ומפרסמים את קובץ ה-APK של האפליקציה באמצעות ערוץ אלפא או בטא. בדיקת Robo פועלת על קבוצה של מכשירים פיזיים פופולריים ממיקומים גיאוגרפיים שונים, ומספקת כיסוי בדיקה במגוון גורמי צורה ותצורות חומרה. מידע נוסף על שימוש בדוחות טרום-השקה כדי לזהות בעיות
כניסה לחשבון בדיקה והזנת טקסט מוגדר מראש
בדיקת Robo תומכת בכניסה לחשבון בדיקה, ומאפשרת גם להזין טקסט מוגדר מראש בשדות באפליקציה. כדי להזין טקסט מוגדר מראש, כמו פרטי כניסה מותאמים אישית, בדיקת Robo יכולה להזין טקסט בשדות EditText באפליקציה. לכל מחרוזת, צריך לציין את שדה EditText באמצעות שם משאב של Android. מידע נוסף זמין במאמר בנושא גישה למשאבים.
כניסה
בבדיקת Robo יש שתי שיטות בלעדיות לתמיכה בכניסה לחשבון:
כניסה בהתאמה אישית: אם מספקים פרטי כניסה לחשבון בדיקה, צריך לציין לבדיקת Robo איפה להזין אותם, ולספק את הפרטים האלה.
כניסה אוטומטית: אם לא מספקים פרטי כניסה לחשבון בדיקה לכניסה מותאמת אישית, נעשה שימוש בכניסה אוטומטית. הכלי Robo test יכול להיכנס באופן אוטומטי לאפליקציות שנוצרו באמצעות ווידג'טים רגילים של Android או אפליקציות Compose, באמצעות חשבון בדיקה של Google.
כדי לספק פרטי כניסה לחשבון בדיקה לצורך כניסה בהתאמה אישית:
בדף בחירת מאפיינים, בוחרים באפשרות אפשרויות נוספות.
בקטע פרטי הכניסה לחשבון הבדיקה (אופציונלי), מזינים את שמות המשאבים של שם המשתמש והסיסמה, ואת שם המשתמש והסיסמה של חשבון הבדיקה.
קלט טקסט מוגדר מראש
אתם יכולים לספק טקסט קלט בהתאמה אישית לשדות טקסט אחרים שבהם נעשה שימוש באפליקציה. כדי לספק טקסט קלט לשדות נוספים, מבצעים את הפעולות הבאות:
בדף בחירת מאפיינים, בוחרים באפשרות אפשרויות נוספות.
בקטע שדות נוספים (אופציונלי), מזינים שם של משאב אחד או יותר, ואת המחרוזות שצריך להזין בשדות הטקסט המתאימים.
שגיאות בהזנת טקסט מוגדר מראש {:#predefined-text}
בדיקת Robo מחפשת שדות EditText עם שם של משאב Android שתואם לביטוי רגולרי שצוין. אם Robo לא מוצא שדה תואם, הוא לא מזין את הטקסט, אבל ממשיך בסריקה כרגיל.
קישורי עומק
אפשר לספק עד שלושה קישורי עומק שנתמכים על ידי האפליקציה לצורך בדיקה.
קישורי עומק מונפקים לאפליקציה כ-Intent של Android ACTION_VIEW. לכן, כל קישור צריך להתאים למסנן Intent באפליקציה.
אם מספקים קישור עומק אחד או יותר, האפליקציה מופעלת קודם בצורה רגילה (באמצעות Intent ACTION_MAIN) והסורק סורק אותה עד שהזמן הקצוב לתפוגה שצוין נגמר. אחרי הסריקה הראשית, כל קישור עמוק נסרק למשך 30 שניות נוספות.
שגיאות בקישורי עומק
אם בדיקת Robo לא מוצאת פעילות שתואמת לקישור העומק, Test Lab היא מתעלמת מהקישור. בעיות בקישורי עומק נובעות בדרך כלל מחוסר התאמה בין קישור העומק שצוין לבין ההגדרה שלו באפליקציה. כדאי לבדוק את כתובת ה-URL שצוינה ואת האפליקציה כדי לוודא שאין שגיאות הקלדה או חוסר עקביות אחר.
תמיכה ברישוי לשימוש באפליקציות
Test Lab תומך באפליקציות שמשתמשות בשירות App Licensing שמוצע על ידי Google Play. כדי לבדוק את הרישוי בהצלחה כשבודקים את האפליקציה באמצעות Test Lab, צריך לפרסם את האפליקציה בערוץ הייצור בחנות Play. כדי לבדוק את האפליקציה בערוץ אלפא או בטא באמצעות Test Lab, צריך להסיר את בדיקת הרישיון לפני העלאת האפליקציה אל Test Lab.
השלבים הבאים
- התאמה אישית של הבדיקות באמצעות סקריפטים של Robo.