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

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

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

قبل البدء

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

لتفعيل ميزة "توزيع التطبيقات"، يُرجى اتّباع الخطوات التالية:

  1. افتح صفحة "توزيع التطبيقات" في وحدة تحكُّم Firebase.

  2. اختَر تطبيق iOS.

  3. انقر على البدء.

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

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

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

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

لمعرفة كيفية دمج App Distribution مع Fastlane، اطّلِع على توزيع تطبيقات iOS على المختبِرين باستخدام Fastlane. يمكنك أيضًا الاطّلاع على درس تطبيقي حول الترميز يرشدك خلال عملية الدمج السريع.

استخدام واجهة سطر الأوامر في Firebase

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

يمكنك توزيع أحدث إصدار من نظام التشغيل iOS test.ipa من خلال تحديد رقم تعريف تطبيق Firebase الخاص بالتطبيق، ثم إضافة ملاحظة إصدار وملف يحتوي على الرسائل الإلكترونية للمختبِرين:

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

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

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

استخدِم المكوّن الإضافي Fastlane App Distribution أو واجهة سطر الأوامر في Firebase مع حسابات الخدمة، والذي يستفيد من بيانات الاعتماد التلقائية للتطبيق ويساعدك على إدارة CI. حساب الخدمة هو نوع من حسابات Google يمثّل التطبيقات على عكس المستخدمين. يمكن لنظام CI الخاص بك استخدام حسابات الخدمة لتشغيل أحمال عمل "توزيع التطبيقات". لمزيد من المعلومات، يُرجى الاطّلاع على المصادقة باستخدام حساب خدمة.

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

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

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

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

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

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

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

ضَع في اعتبارك الحدود القصوى للمختبِرين

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

إدارة أجهزة اختبار iOS الجديدة وإضافتها تلقائيًا

لمساعدتك في تسجيل أجهزة اختبار iOS إضافية، تساعدك ميزة App Distribution في إدارة أجهزة اختبار iOS في بوابة مطوّري برامج Apple من خلال إبلاغك عن أجهزة iOS الاختبارية الجديدة عبر البريد الإلكتروني أو ملفات CSV. لمزيد من المعلومات، يُرجى الاطّلاع على استيراد المختبِرين من ملفات CSV. يمكنك أيضًا تصدير الأجهزة الجديدة باستخدام Fastlane آليًا.

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

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

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

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

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

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

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

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

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

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

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

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