Check out what’s new from Firebase at Google I/O 2022. Learn more

התחל עם מבחני רובו

Robo test הוא כלי בדיקה המשולב עם Firebase Test Lab. מבחן Robo מנתח את המבנה של ממשק המשתמש של האפליקציה שלך ולאחר מכן בוחן אותו באופן שיטתי, תוך הדמיה אוטומטית של פעילויות משתמש. בניגוד למבחן UI/Application Exerciser Monkey , מבחן Robo תמיד מדמה את אותן פעילויות משתמש באותו סדר כאשר אתה משתמש בה כדי לבדוק אפליקציה בתצורת מכשיר ספציפית עם אותן הגדרות. זה מאפשר לך להשתמש במבחן Robo כדי לאמת תיקוני באגים ולבדוק רגרסיות באופן שאינו אפשרי בעת בדיקה עם מבחן UI/Application Exerciser Monkey .

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

סטטיסטיקת סריקה של בדיקת רובו

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

  • פעולות: המספר הכולל של הפעולות שבוצעו במהלך הסריקה, כולל פעולות סקריפט של רובו, פעולות קוף והנחיות רובו.
  • פעילויות: מספר הפעילויות הנבדלות שכוסו במהלך הסריקה.
  • מסכים: מספר המסכים הנבדלים שבהם ביקרו במהלך הסריקה.

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

פסק זמן לבדיקת רובו

בהתאם למורכבות ממשק המשתמש של האפליקציה שלך, בדיקת Robo עשויה להימשך חמש דקות או יותר כדי להשלים קבוצה יסודית של אינטראקציות ממשק משתמש. אנו ממליצים להגדיר את פסק הזמן לבדיקה לפחות ל-120 שניות (2 דקות) עבור רוב האפליקציות, ו-300 שניות (5 דקות) עבור אפליקציות מורכבות במידה בינונית. ערך ברירת המחדל לזמן קצוב הוא 300 שניות (5 דקות) עבור בדיקות המופעלות מ-Android Studio ומסוף Firebase, ו-900 שניות (15 דקות) עבור בדיקות המופעלות משורת הפקודה gcloud .

שגיאות זמן קצוב להפעלת האפליקציה

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

יותר שליטה עם סקריפטים של רובו

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

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

התחל עם Robo scripting דרך כלי Firebase ב-Android Studio:

  1. פתח את Android Studio.
  2. בתפריט הראשי, בחר כלים > Firebase .
  3. בחר Test Lab ולחץ על Record Robo Script והשתמש בו כדי להדריך את Robo Test .
  4. בצע את שאר השלבים בכלי כדי להקליט את סקריפט הרובו שלך.
  5. העלה את הסקריפט של רובו למעבדת הבדיקות והתחל את המבחן שלך.

שגיאות סקריפט של רובו

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

בדיקות רובו ווידג'טים של ממשק משתמש שאינם אנדרואיד

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

אם מסך באפליקציה שלך אינו משתמש בווידג'טים של ממשק אנדרואיד, מבחני Robo נופלים בחזרה על Monkey Actions כדי לבדוק את המסך הזה. בניגוד לפעולות הרובו השיטתיות יותר, Monkey Actions פשוט מדמים אירועי הקשה במיקומים חצי אקראיים על מסך המכשיר.

כדי לבחון טוב יותר מסכים שאינם משתמשים בווידג'טים של ממשק אנדרואיד, אתה יכול להחליף את ההקשות השרירותיות של פעולת קוף בסט של הקשות ואינטראקציות עם סקריפט דרך Firebase Test Lab Game Loop Tests .

אינטגרציה עם Google Play

אתה יכול להשתמש במבחן Robo ב-Google Play Console כאשר אתה מעלה ומפרסם את קובץ ה-APK של האפליקציה שלך באמצעות ערוץ אלפא או בטא. מבחן רובו פועל על קבוצה של מכשירים פיזיים פופולריים ממיקומים גיאוגרפיים שונים, ומספק כיסוי בדיקה על פני גורמי צורה ותצורות חומרה שונות. למידע נוסף, ראה שימוש בדוחות טרום-השקה לזיהוי בעיות .

בדוק כניסה לחשבון וקלט טקסט מוגדר מראש

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

להתחבר

למבחן Robo יש שתי שיטות בלעדיות הדדית לתמיכה בכניסה:

  • כניסה מותאמת אישית: אם אתה מספק אישורי חשבון בדיקה, עליך לומר ל-Robo test היכן להזין אותם, וגם לספק אישורים אלה.
  • כניסה אוטומטית: אם לאפליקציה שלך יש מסך כניסה המשתמש בחשבון Google לאימות, Robo test משתמש בחשבון בדיקה של Google, אלא אם כן תספק אישורי חשבון בדיקה לכניסה מותאמת אישית.

כדי לספק אישורי חשבון בדיקה עבור כניסה מותאמת אישית, בצע את הפעולות הבאות:

  1. בדף בחר מידות , בחר אפשרויות נוספות .
  2. תחת אישורי חשבון בדיקה (אופציונלי) , הזן את שמות המשאבים של שם המשתמש והסיסמה ואת שם המשתמש והסיסמה עבור חשבון הבדיקה.

קלט טקסט מוגדר מראש

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

  1. בדף בחר מידות , בחר אפשרויות נוספות .
  2. תחת שדות נוספים (אופציונלי) , הזן שם משאב אחד או יותר, ואת המחרוזות להזין בשדות הטקסט המתאימים.

שגיאות קלט טקסט מוגדרות מראש

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

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

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

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

תמיכה ברישוי אפליקציות

Test Lab תומכת באפליקציות המשתמשות בשירות רישוי האפליקציות המוצע על ידי Google Play. כדי לבדוק בהצלחה רישוי בעת בדיקת האפליקציה שלך עם Test Lab, עליך לפרסם את האפליקציה שלך לערוץ הייצור בחנות Play. כדי לבדוק את האפליקציה שלך בערוץ אלפא או בטא באמצעות Test Lab, הסר את בדיקת הרישוי לפני העלאת האפליקציה שלך ל-Test Lab.

בעיות ידועות

למבחן רובו יש כרגע את המגבלות הידועות הבאות:

  • תמיכת מסגרת ממשק משתמש . מבחן Robo תואם רק לאפליקציות המשתמשות ברכיבי ממשק משתמש ממסגרת ממשק המשתמש של Android (כולל אובייקטי View ו- ViewGroup , אך לא כולל אובייקטי WebView ). אם אתה משתמש במבחן Robo כדי להפעיל אפליקציות המשתמשות במסגרות משתמש אחרות, כולל אפליקציות המשתמשות במנוע המשחק Unity, הבדיקה עשויה לצאת מבלי לחקור מעבר למסך הראשון.
  • Captchas לכניסה . מבחן רובו אינו יכול לעקוף מסכי כניסה הדורשים פעולת משתמש נוספת מעבר להזנת אישורים לכניסה (כגון השלמת Captcha).