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

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

إذا كنت تستخدم أيضًا منصات 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.

أتمِت سير عمل اختبار الإصدارات التجريبية باستخدام مسار التكامل المستمر/التسليم المستمر

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

استخدام fastlane

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

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

استخدام Gradle

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

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

استخدام واجهة سطر الأوامر (CLI) الخاصة بـ "Firebase"

استخدِم أدوات سطر الأوامر Firebase التي توفّرها App Distribution لتوزيع الإصدارات على المختبِرين آليًا. يمكنك تحديد المختبِرين وملاحظات الإصدار لأحد الإصدارات.

وزِّع أحدث إصدار Android من خلال تحديد معرّف التطبيق في Firebase App Distribution، ويمكنك اختياريًا إضافة ملاحظات حول الإصدار وملف يحتوي على عناوين البريد الإلكتروني للمختبِرين:

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

لمزيد من المعلومات حول استخدام واجهة سطر الأوامر Firebase لتنفيذ عمليات الإنشاء بشكل آلي، راجِع توزيع تطبيقات Android على المختبِرين باستخدام واجهة سطر الأوامر Firebase.

استخدام بيانات اعتماد الخدمة للمصادقة

استخدِم App Distribution المكوّن الإضافي fastlane أو المكوّن الإضافي Gradle أو واجهة سطر الأوامر Firebase مع حسابات الخدمة. حساب الخدمة هو نوع من حسابات Google يمثّل التطبيقات (بدلاً من المستخدمين). يمكن لنظام التكامل المستمر استخدام حسابات الخدمة لتشغيل أحمال عمل App Distribution. لمزيد من المعلومات، اطّلِع على المصادقة باستخدام حساب خدمة.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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