أفضل الممارسات لتوزيع تطبيقات Android على مختبِري ضمان الجودة باستخدام CI/CD

يقدّم هذا المستند أفضل الممارسات لاستخدام Firebase App Distribution لجعل مسارات العمل لاختبار الإصدارات التجريبية من Android مستدامة وقابلة للتكرار في بيئة تدمج بين التطوير والنشر (CI/CD). تشمل الحلول Gradle وFastlane، ولكن لتوفير المزيد من المرونة، نضمّن أيضًا حلولاً متاحة من خلال وحدة تحكم Firebase، وFirebase CLI، وواجهة برمجة تطبيقات Firebase App Distribution العامة. ونوضّح أيضًا حدود الإصدار والمختبِرين حتى تتمكّن من التخطيط مسبقًا للحصول على تجربة مثالية.

إذا كنت تستخدم أيضًا منصات Apple، يمكنك الاطّلاع على أفضل الممارسات لتوزيع تطبيقات Apple على مختبِري ضمان الجودة باستخدام أدوات CI/CD وFastlane.

قبل البدء

قبل تنفيذ أفضل الممارسات الواردة في هذا المستند، احرص على تفعيل App Distribution في وحدة تحكّم Firebase لكل تطبيق. إذا لم يتم تفعيل App Distribution، سيظهر لك الخطأ 404.

لتفعيل ميزة App Distribution، اتّبِع الخطوات التالية:

  1. افتح صفحة App Distribution في وحدة تحكّم Firebase.
  2. اختَر تطبيق Android.
  3. انقر على البدء.

بما أنّ مجموعات حزمات تطبيق Android (AAB) أصبحت تنسيق حِزم Android الأكثر شيوعًا، ننصحك بإعداد إمكانية توزيع مجموعات حزمات AAB على المُختبِرين من خلال الربط بـ Google Play.

برمجة سير عمل اختبار الإصدار التجريبي باستخدام مسار التكامل المستمر/التسليم المستمر (CI/CD)

إذا كنت تريد إنشاء التطبيقات وإصدارها للمختبِرين بشكل آلي وكنت تستخدم عملية التطوير/النشر المتكاملَين (CI/CD)، ننصحك باستخدام fastlane أو Gradle. هناك خيار آخر وهو استخدام Firebase واجهة برمجة التطبيقات، التي تتيح لك الوصول إلى مجموعة كبيرة من منتجات Firebase.

استخدام الخط السريع

يمكنك دمج "App Distribution" في مسار CI/CD باستخدام Fastlane، وهو أداة مفتوحة المصدر تعمل تلقائيًا على إنشاء تطبيقات iOS وAndroid وإطلاقها. ومن خلال إنشاء أحدث إصداراتك وتوزيعها على المختبِرين تلقائيًا، تضمن حصول المختبِرين دائمًا على أحدث إصدار تجريبي من تطبيقك.

للتعرّف على كيفية دمج App Distribution مع fastlane، اطّلِع على مقالة نشر تطبيقات Android للمختبِرين باستخدام fastlane.

استخدام Gradle

استخدِم Gradle لدمج App Distribution في عملية إنشاء تطبيق Android باستخدام المكوّن الإضافي App Distribution Gradle. يتيح لك المكوّن الإضافي تحديد المختبِرين و ملاحظات الإصدار في ملف build.gradle الخاص بتطبيقك، ما يتيح لك ضبط عمليات التوزيع لأنواع الإصدارات ونُسخ تطبيقك المختلفة.

للتعرّف على كيفية دمج App Distribution مع Gradle، اطّلِع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام Gradle.

استخدام سطر أوامر Firebase

استخدِم أدوات واجهة سطر الأوامر Firebase التي توفّرها 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 مع حسابات الخدمة. حساب الخدمة هو نوع من حسابات Google يمثّل التطبيقات (وليس المستخدمين). يمكن لنظام CI الخاص بك استخدام حسابات الخدمة لتشغيل أحمال عمل "App Distribution". لمزيد من المعلومات، يُرجى الاطّلاع على مقالة المصادقة باستخدام حساب خدمة.

إذا كنت تستخدم عملية ربط هوية "وحدة العمل"، يمكنك إنشاء ملف إعدادات بيانات الاعتماد واستخدامه بدلاً من مفتاح حساب الخدمة.

مراعاة حدود الإصدار

يتيح App Distribution الاحتفاظ بـ 1,000 إصدار كحد أقصى لكل تطبيق. وهذا يعني أنّه عند تجاوز الحد الأقصى للإصدارات، يحذف App Distribution تلقائيًا الإصدارات الأقدم التي تتجاوز الحدّ. للتعرّف على كيفية إدارة حدود الإصدارات، اطّلِع على مقالة ما هي مدة توفّر إصدارات التطبيق؟

إضافة المجموعة نفسها من المختبِرين إلى إصدارات متعددة

إذا كنت تريد إضافة أعداد كبيرة من المختبِرين إلى إصداراتك، استخدِم وظائف إدارة المختبِرين المجمّعة في App Distribution.

ننصحك باستخدام المجموعات لإضافة المختبِرين نفسهم إلى إصدارات متعددة. تعمل المجموعة كقائمة التحكّم في الوصول. عند إزالة مختبِر من مجموعة، يفقد المختبِر إمكانية الوصول إلى جميع الإصدارات التي تم توزيعها على تلك المجموعة. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة إضافة المختبِرين وإزالتهم من مجموعة.

إذا كان لديك عدد كبير من المختبِرين لإدارة اختباراتهم، يمكنك إضافة المختبِرين وحذفهم بشكل مجمّع باستخدام وحدة تحكّم Firebase. لأتمتة إضافة المختبِرين وإزالتهم، استخدِم Firebase CLI أو fastlane أو Gradle أو واجهة برمجة التطبيقات App Distribution API العلنية في Firebase.

مراعاة حدود عدد المختبِرين

تفرض App Distribution قيودًا على عدد المختبِرين الذين يمكنك إضافتهم إلى مشروع Firebase أو مجموعة App Distribution. وعند تجاوز هذه الحدود، لن تتمكّن من توزيع تطبيقك على مختبِرين إضافيين. للاطّلاع على مزيد من المعلومات عن حدود عدد المختبِرين، اطّلِع على المقالة هل هناك حدود لعدد المختبِرين الذين يمكنني إضافتهم إلى تطبيقي؟

السماح للمختبِرين المحتملين بالتسجيل الذاتي للاختبار

لتسهيل توزيع تطبيقك على المزيد من المختبِرين، ننصحك باستخدام روابط الدعوة. رابط الدعوة هو عنوان URL فريد يتيح للمختبِرين إدخال عناوين البريد الإلكتروني الخاصة بهم للاشتراك في اختبار أحد التطبيقات. ومن خلال السماح للمستخدمين بإضافة أنفسهم إلى قائمة مختبِري التطبيق، سلِس زيادة قاعدة المختبِرين الداخليِّين.

تشمل حالات استخدام روابط الدعوة برامج اختبار البرامج الداخلية في الشركات والمؤسسات التي تضم فِرق فحص جودة كبيرة ومجموعات المطوّرين الذين يريدون أن يتمكّن العملاء الفرديون من التحكّم في إمكانية وصول المختبِرين.

ننصحك بإنشاء رابط دعوة لمجموعة. إنّ أي مختبِر يوقع باستخدام رابط الدعوة تتم إضافته تلقائيًا إلى الإصدارات اللاحقة.

لمزيد من المعلومات، يمكنك الاطّلاع على إنشاء روابط دعوات وإضافة مختبِرين وإزالتهم من مجموعة.

التأكّد من أنّ المختبِرين يختبِرون الإصدار الذي يهمّك

عند تحميل إصدار جديد، يتم إرسال إشعار إلى المختبِرين عبر البريد الإلكتروني. لاستكمال هذا الإشعار، يمكنك استخدام الميزات التالية - روابط الإصدار والتنبيهات داخل التطبيق - للتأكد من أن المختبِرين يختبرون إصدار التطبيق المحدّد الذي يهمّك:

  • روابط الإصدار: استخدِم هذه الميزة عندما تريد مشاركة إصدار معيّن مع المختبِرين. لمعرفة كيفية استخدام روابط الإصدار، يُرجى الاطّلاع على مقالة توزيع تطبيقات Android على المختبِرين باستخدام وحدة تحكّم Firebase. تتوفّر هذه الروابط أيضًا مع أدوات Firebase وFastlane وGradle CLI لاستخدامها مع أدوات إنشاء الحلول البرمجية.
  • التنبيهات داخل التطبيق: يمكنك استخدام هذه التنبيهات إذا أردت التأكد من أنّ المختبِرين يختبرون أحدث إصدار من تطبيقك. ومن خلال دمج حزمة تطوير البرامج (SDK) لنظام التشغيل Android App Distribution لمنصة Firebase، يمكنك عرض التنبيهات مباشرةً داخل التطبيق للمختبِرين عند توفُّر إصدارات جديدة من تطبيقك. للتعرّف على كيفية إضافة تنبيهات داخل التطبيق، يمكنك الاطّلاع على إشعار المختبِرين بشأن الإصدارات الجديدة.

إزالة إذن الوصول تلقائيًا للمختبِرين الذين يغادرون الشركة

عندما تكون عملية الاختبار الداخلي للتكامل المستمر/النشر المستمر قيد التشغيل، عليك التأكّد من أنّه لن يعود بإمكان الأشخاص الذين غادروا الشركة الوصول إلى الإصدارات الداخلية. لمساعدتك في إدارة أذونات وصول المختبِرين إلى الإصدارات، يوفّر App Distribution الخيارات التالية: