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

במסמך הזה מפורטות שיטות מומלצות לשימוש ב-Firebase App Distribution כדי ליצור תהליכי עבודה של בדיקות לפני השקת אפליקציות ל-Android, שניתן לשחזר ולקיים בסביבת CI/CD. הפתרונות כוללים את Gradle ו-fastlane, אבל כדי להעניק לכם גמישות רבה יותר, אנחנו כוללים גם פתרונות שזמינים דרך Firebaseהמסוף, FirebaseCLI ו-App DistributionFirebase 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 ולוריאציות של האפליקציה.

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

שימוש ב-Firebase CLI

משתמשים בכלים של 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

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

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

משתמשים ב-App Distribution fastlane plugin, ב-Gradle plugin או ב-Firebase CLI עם חשבונות שירות. חשבון שירות הוא סוג של חשבון 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, לשימוש עם כלי האוטומציה שלכם לבניית אפליקציות.
  • התראות בתוך האפליקציה: כדאי להשתמש בהתראות האלה כשרוצים לוודא שהבודקים בודקים את הגרסה העדכנית של האפליקציה. אם משלבים את Firebase App Distribution Android SDK, אפשר להציג התראות ישירות בתוך האפליקציה לבודקים כשגרסאות חדשות של האפליקציה זמינות. איך מוסיפים התראות בתוך האפליקציה

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

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