تقدِّم هذه المقالة أفضل الممارسات لاستخدام Firebase App Distribution من أجل جعل عمليات اختبار الإصدارات التجريبية من تطبيقات Android مستدامة وقابلة للتكرار في بيئة CI/CD. تشمل الحلول Gradle وfastlane، ولكن لمنحك مرونة أكبر ، نقدّم أيضًا حلولاً متاحة من خلال Firebase console وFirebase CLI وواجهة برمجة التطبيقات العامة Firebase App Distribution API. نصف أيضًا حدود الإصدارات والمختبِرين حتى تتمكّن من التخطيط مسبقًا للحصول على تجربة مثالية.
إذا كنت تستخدم أيضًا منصّات Apple، يمكنك الاطّلاع على أفضل الممارسات لتوزيع تطبيقات Apple على مختبِري ضمان الجودة باستخدام CI/CD وfastlane.
قبل البدء
قبل تنفيذ أفضل الممارسات الواردة في هذه المقالة، تأكَّد من تفعيل App Distribution في Firebase console لكل تطبيق. إذا لم تفعِّل App Distribution، سيظهر لك الخطأ 404.
لتفعيل App Distribution، اتّبِع الخطوات التالية:
- افتح صفحة App Distribution في Firebase console.
- اختَر تطبيق Android.
- انقر على البدء.
بما أنّ حزم تطبيقات Android (AAB) أصبحت تنسيق حزم Android الأكثر شيوعًا، ننصحك بإعداد إمكانية توزيع حزم AAB على المختبِرين من خلال الربط بـ Google Play.
برمِج عملية اختبار الإصدارات التجريبية باستخدام مسار CI/CD
إذا أردت برمجة عملية إنشاء التطبيقات وإصدارها للمختبِرين وكنت تستخدم CI/CD، ننصحك باستخدام fastlane أو Gradle. هناك خيار آخر وهو استخدام Firebase CLI، الذي يتيح لك الوصول إلى مجموعة كبيرة من منتجات Firebase.
استخدام fastlane
يمكنك دمج App Distribution في مسار CI/CD باستخدام fastlane، وهي أداة مفتوحة المصدر تبرمِج عملية إنشاء تطبيقات iOS وAndroid وإصدارها. من خلال إنشاء أحدث الإصدارات وتوزيعها على المختبِرين تلقائيًا، يمكنك التأكّد من حصولهم دائمًا على أحدث إصدار تجريبي من تطبيقك.
للتعرّف على كيفية دمج App Distribution مع fastlane، يمكنك الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام fastlane.
استخدام Gradle
يمكنك استخدام Gradle لدمج App Distribution في عملية تصميم تطبيقات Android باستخدام الـ
App Distribution Gradle plugin. يتيح لك هذا المكوّن الإضافي تحديد المختبِرين وملاحظات الإصدار في ملف build.gradle الخاص بتطبيقك، ما يتيح لك ضبط عمليات التوزيع لأنواع الإصدارات المختلفة وأشكالها في تطبيقك.
للتعرّف على كيفية دمج App Distribution مع Gradle، يمكنك الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام Gradle.
استخدام Firebase CLI
يمكنك استخدام أدوات Firebase CLI التي يوفّرها App Distribution لتوزيع الإصدارات على المختبِرين آليًا. يمكنك تحديد المختبِرين وملاحظات الإصدار لإصدار معيّن.
يمكنك توزيع أحدث إصدار من تطبيق 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، أو المكوّن الإضافي Gradle، أو Firebase CLI مع حسابات الخدمة. حساب الخدمة هو نوع من حسابات Google يمثّل التطبيقات (بدلاً من المستخدمين). يمكن لنظام CI استخدام حسابات الخدمة لتشغيل مهام App Distribution. لمزيد من المعلومات، يمكنك الاطّلاع على مقالة المصادقة باستخدام حساب خدمة.
مراعاة حدود الإصدارات
App Distribution يتيح ما يصل إلى 1,000 إصدار كحد أقصى لكل تطبيق. ويعني ذلك أنّه عند تجاوز حد الإصدار، يحذف App Distribution تلقائيًا أقدم الإصدارات التي تتجاوز الحد. للتعرّف على كيفية إدارة حدود الإصدارات، يمكنك الاطّلاع على مقالة ما هي مدة توفّر إصدارات التطبيقات؟
إضافة المجموعة نفسها من المختبِرين إلى إصدارات متعدّدة
إذا أردت إضافة أعداد كبيرة من المختبِرين إلى إصداراتك، استخدِم App Distribution's وظيفة إدارة المختبِرين المجمّعة.
ننصحك باستخدام المجموعات لإضافة المختبِرين أنفسهم إلى إصدارات متعدّدة. تعمل المجموعة كقائمة للتحكّم في الوصول. وعند إزالة مختبِر من مجموعة، يفقد إمكانية الوصول إلى جميع الإصدارات الموزَّعة على تلك المجموعة. لمزيد من المعلومات، يمكنك الاطّلاع على مقالة إضافة مختبِرين وإزالتهم من مجموعة.
إذا كان لديك الكثير من المختبِرين لإدارتهم، يمكنك إضافة المختبِرين وحذفهم بشكل مجمّع باستخدام Firebase console. لبرمجة عملية إضافة المختبِرين وإزالتهم، استخدِم الـ Firebase CLI، fastlane، Gradle، أو واجهة برمجة التطبيقات العامة App Distribution API.
مراعاة حدود المختبِرين
يفرض App Distribution حدًا على عدد المختبِرين الذين يمكنك إضافتهم إلى مشروع Firebase أو مجموعة App Distribution. عند تجاوز هذه الحدود، لن تتمكّن من توزيع تطبيقك على مختبِرين إضافيين. لمزيد من المعلومات حول حدود المختبِرين، يمكنك الاطّلاع على مقالة هل هناك حدود لإضافة مختبِرين إلى تطبيقي؟
السماح للمختبِرين المحتملين بالتسجيل الذاتي للاختبار
لتسهيل توزيع تطبيقك على المزيد من المختبِرين، ننصحك باستخدام روابط الدعوة. رابط الدعوة هو عنوان URL فريد يتيح للمختبِرين إدخال عناوين بريدهم الإلكتروني للاشتراك في اختبار تطبيق. إنّ السماح للمستخدمين بإضافة أنفسهم إلى قائمة مختبِري التطبيق هو طريقة سلسة لزيادة قاعدة الاختبار الداخلية.
تشمل حالات استخدام روابط الدعوة برامج اختبار المنتجات داخل الشركة والمؤسسات التي تضم فرقًا كبيرة لضمان الجودة ومجموعات المطوّرين الذين يريدون أن يتمكّن العملاء الأفراد من التحكّم في إذن وصول المختبِرين.
ننصحك بإنشاء رابط دعوة لمجموعة. تتم إضافة أي مختبِر يشترك باستخدام رابط الدعوة تلقائيًا إلى الإصدارات اللاحقة.
لمزيد من المعلومات، يمكنك الاطّلاع على مقالتَي إنشاء روابط الدعوة وإضافة مختبِرين وإزالتهم من مجموعة.
التأكّد من أنّ المختبِرين يختبرون الإصدار الذي يهمّك
عند تحميل إصدار جديد، يتم إعلام المختبِرين عبر البريد الإلكتروني. بالإضافة إلى هذا الإشعار، يمكنك استخدام الميزتَين التاليتَين – روابط الإصدار والتنبيهات داخل التطبيق – للتأكّد من أنّ المختبِرين يختبرون إصدار التطبيق المحدّد الذي يهمّك:
- روابط الإصدار: استخدِم هذه الميزة عندما تريد مشاركة إصدار معيّن مع المختبِرين. للتعرّف على كيفية استخدام روابط الإصدار، يمكنك الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام Firebase console. تتوفّر هذه الروابط أيضًا مع أدوات سطر الأوامر (CLI) من Firebase وfastlane وGradle لاستخدامها مع أدوات برمجة عمليات الإنشاء.
- التنبيهات داخل التطبيق: استخدِم هذه التنبيهات عندما تريد التأكّد من أنّ المختبِرين يختبرون أحدث إصدار من تطبيقك. من خلال دمج حزمة تطوير البرامج (SDK) لنظام Android من Firebase App Distribution، يمكنك عرض التنبيهات مباشرةً داخل التطبيق للمختبِرين عند توفّر إصدارات جديدة من تطبيقك. للتعرّف على كيفية إضافة التنبيهات داخل التطبيق، يمكنك الاطّلاع على مقالة إشعار المختبِرين بالإصدارات الجديدة.
إزالة إذن وصول المختبِرين الذين يتركون الشركة تلقائيًا
عند إعداد عملية الاختبار الداخلية في CI/CD وتشغيلها، عليك التأكّد من أنّ الأشخاص الذين يتركون الشركة لن يعود بإمكانهم الوصول إلى الإصدارات الداخلية. لمساعدتك في إدارة إذن وصول المختبِرين إلى الإصدارات، يوفّر App Distribution الخيارات التالية:
- fastlane: استخدِم ملف Fastfile أو شغِّل إجراءات fastlane مباشرةً. لمزيد من المعلومات، يمكنك الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام fastlane.
- Firebase CLI: استخدِم الإجراء
firebase appdistribution:testers:remove. لمزيد من المعلومات، يمكنك الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام Firebase CLI. - Gradle: إذا كنت تستخدم Gradle لإزالة المختبِرين، مرِّر
appDistributionRemoveTestersمع الوسيطتَينو--PROJECT_NUMBER في ملف--EMAILS build.gradle. لمزيد من المعلومات، يمكنك الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام Gradle. - واجهة برمجة التطبيقات العامة Firebase App Distribution API:
استخدِم نقطة النهاية
testers.batchRemove.