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