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

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

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

قبل البدء

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

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

  1. افتح صفحة App Distribution في وحدة تحكّم Firebase.

  2. اختَر تطبيقك المتوافق مع نظام التشغيل iOS.

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

إتاحة سير عمل اختبار الإصدار التجريبي تلقائيًا باستخدام ميزة "التكامل والنشر"

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

استخدام fastlane

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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