שיטות מומלצות להפצת אפליקציות ל-Android לבודקי QA באמצעות CI/CD

במאמר הזה מוסברות שיטות מומלצות לשימוש ב-Firebase App Distribution כדי ליצור תהליכי עבודה של בדיקות לפני השקת אפליקציות ל-Android, שניתן לשמור ולחזור עליהם בסביבת CI/CD. הפתרונות כוללים את Gradle ו-fastlane, אבל כדי לתת לכם גמישות רבה יותר, אנחנו כוללים גם פתרונות שזמינים דרך מסוף Firebase, Firebase CLI ו-Firebase App Distribution API ציבורי. אנחנו גם מתארים את המגבלות על פרסום גרסאות ועל משתמשי בטא, כדי שתוכלו לתכנן מראש חוויה אופטימלית.

אם אתם משתמשים גם בפלטפורמות של אפל, כדאי לעיין במאמר שיטות מומלצות להפצת אפליקציות לאפל לבודקי QA באמצעות CI/CD ו-fastlane.

לפני שמתחילים

לפני שמיישמים את השיטות המומלצות שמתוארות במסמך הזה, חשוב להפעיל את App Distribution ב-Firebase Console לכל אפליקציה. אם לא הפעלתם את App Distribution, תוצג לכם שגיאה 404.

כדי להפעיל את App Distribution:

  1. פותחים את הדף App Distribution במסוף Firebase.
  2. בוחרים את האפליקציה ל-Android.
  3. לוחצים על Get Started.

קובצי Android App Bundle ‏ (AAB) הופכים לפורמט החבילה הנפוץ ביותר ב-Android, ולכן מומלץ להגדיר את האפשרות להפיץ קובצי AAB לבוחנים שלכם על ידי קישור אל Google Play.

אוטומציה של תהליך העבודה של בדיקות טרום-השקה באמצעות צינור עיבוד נתונים של CI/CD

אם אתם רוצים להפוך את תהליך הפיתוח וההפצה של אפליקציות לטסטרים לאוטומטי, ואתם משתמשים ב-CI/CD, מומלץ להשתמש ב-fastlane או ב-Gradle. אפשרות נוספת היא להשתמש ב-Firebase CLI, שמאפשר לכם לגשת למגוון רחב של מוצרי Firebase.

שימוש ב-fastlane

שילוב של App Distribution בצינור CI/CD באמצעות fastlane, כלי קוד פתוח שמבצע אוטומציה של בנייה ושחרור של אפליקציות ל-iOS ול-Android. כשאתם יוצרים ומפיצים את הגרסאות האחרונות של האפליקציה לבודקים באופן אוטומטי, אתם מוודאים שלבודקים תמיד תהיה גרסת הבדיקה העדכנית ביותר של האפליקציה.

במאמר הפצת אפליקציות ל-Android לבודקים באמצעות fastlane מוסבר איך לשלב את App Distribution עם fastlane.

שימוש ב-Gradle

משתמשים ב-Gradle כדי לשלב את App Distribution בתהליך ה-build של Android באמצעות הפלאגין App Distribution Gradle. הפלאגין מאפשר לציין את הבודקים ואת הערות הגרסה בקובץ build.gradle של האפליקציה, וכך להגדיר הפצות לסוגים שונים של גרסאות build ולוריאציות של האפליקציה.

במאמר הפצת אפליקציות Android לבודקים באמצעות Gradle מוסבר איך לשלב את App Distribution עם Gradle.

שימוש ב-CLI של Firebase

משתמשים בכלים של Firebase CLI ש-App Distribution מספקת כדי להפיץ גרסאות build לבודקים באופן פרוגרמטי. אפשר לציין בודקים והערות לגבי הגרסה.

מפיצים את ה-build האחרון של Android על ידי ציון מזהה האפליקציה ב-Firebase, אפשר גם להוסיף הערה על הגרסה וקובץ שמכיל את כתובות האימייל של הבודקים:

firebase appdistribution:distribute test.aab  \
    --app 1:1234567890:android:0a1b2c3d4e5f67890  \
    --release-notes "Bug fixes and improvements" --testers-file testers.txt

מידע נוסף על שימוש ב-CLI של Firebase כדי להפוך את תהליך הבנייה לאוטומטי זמין במאמר הפצת אפליקציות ל-Android לבודקים באמצעות ה-CLI של Firebase.

שימוש בפרטי כניסה של שירות לצורך אימות

משתמשים בApp Distribution תוסף fastlane, בתוסף Gradle או ב-CLI של Firebase עם חשבונות שירות. חשבון שירות הוא סוג של חשבון Google שמייצג אפליקציות (בניגוד למשתמשים). מערכת ה-CI יכולה להשתמש בחשבונות שירות כדי להריץ את עומסי העבודה שלכם ב-App Distribution. מידע נוסף זמין במאמר אימות באמצעות חשבון שירות.

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

חשוב לזכור את מגבלות הפרסום

App Distribution תומך במקסימום של 1,000 גרסאות לכל אפליקציה. כלומר, אם חורגים ממגבלת הגרסאות, App Distribution מוחק אוטומטית את הגרסאות הכי ישנות שמעל המגבלה. כמה זמן גרסאות של אפליקציות זמינות?

הוספה של אותה קבוצת בודקים לכמה גרסאות

אם רוצים להוסיף מספר גדול של בודקים לגרסאות, אפשר להשתמש בפונקציונליות של ניהול בודקים בכמות גדולה ב-App Distribution.

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

אם יש לכם הרבה בודקים לניהול, אתם יכולים להוסיף ולמחוק בודקים בכמות גדולה באמצעות מסוף Firebase. כדי להוסיף ולהסיר בודקים באופן אוטומטי, אפשר להשתמש ב-Firebase CLI, ב-fastlane, ב-Gradle או ב-Firebase App Distribution API ציבורי.

חשוב לזכור את המגבלות על הבודקים

App Distribution מגביל את מספר הבודקים שאפשר להוסיף לפרויקט Firebase או לקבוצה App Distribution. אם תחרגו מהמגבלות האלה, לא תוכלו להפיץ את האפליקציה לבודקים נוספים. מידע נוסף על מגבלות הבודקים

הפעלת אפשרות למועמדים להירשם לבדיקה באופן עצמאי

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

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

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

מידע נוסף זמין במאמרים בנושא יצירת קישורים להזמנה והוספה והסרה של בודקים מקבוצה.

מוודאים שהבודקים בודקים את הגרסה שחשובה לכם

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

  • קישורים לגרסאות: משתמשים בתכונה הזו כשרוצים לשתף גרסה ספציפית עם בודקים. במאמר הפצת אפליקציות ל-Android לבודקים באמצעות מסוף Firebase מוסבר איך משתמשים בקישורי הפצה. הקישורים האלה זמינים גם בכלי שורת הפקודה (CLI) של Firebase,‏ fastlane ו-Gradle, לשימוש עם כלי האוטומציה שלכם.
  • התראות בתוך האפליקציה: כדאי להשתמש בהתראות האלה כשרוצים לוודא שהבודקים בודקים את הגרסה העדכנית ביותר של האפליקציה. אם משלבים את App Distribution Android SDK של Firebase, אפשר להציג התראות ישירות בתוך האפליקציה לבודקים כשגרסאות חדשות של האפליקציה זמינות. איך מוסיפים התראות בתוך האפליקציה

הסרה אוטומטית של הגישה של בודקים שעוזבים את החברה

אחרי שמפעילים את תהליך הבדיקה הפנימי של CI/CD, צריך לוודא שלאנשים שעוזבים את החברה אין יותר גישה לבנייה הפנימית. כדי לעזור לכם לנהל את הגישה של הבודקים לגרסאות ה-build, App Distribution מספק את האפשרויות הבאות: