بدء الاختبار باستخدام أنظمة التكامل المستمر (CI)

يمكنك استخدام Firebase Test Lab عند تطوير تطبيقك باستخدام أي نظام تكامل (CI) مستمر. تتيح لك أنظمة التكامل المستمر إنشاء تطبيقك واختباره تلقائيًا في كل مرة تُرسِل فيها تحديثات إلى رمز تطبيقك المصدر.

استخدام Firebase Test Lab مع Jenkins CI

يصف هذا القسم كيفية استخدام Test Lab مع Jenkins CI.

المتطلّبات

قبل أن تتمكّن من استخدام Firebase Test Lab مع Jenkins، عليك إكمال الخطوات التالية:

  1. إعداد gcloud اتّبِع التعليمات الواردة في مقالة استخدام Firebase Test Lab من سطر أوامر gcloud لإنشاء مشروع على Firebase وضبط بيئة حزمة تطوير البرامج (SDK) لنظام التشغيل Google Cloud المحلية.

  2. أنشئ حساب خدمة وامنحه الإذن. لا تخضع حسابات الخدمة لعمليات التحقّق من المحتوى غير المرغوب فيه أو طلبات رمز التحقّق من الإنسان، والتي قد تؤدي إلى حظر عمليات IDE الدمج. أنشئ حساب خدمة بدور محرِّر في Google Cloud console ثم فعِّله (اطّلِع على مستندات gcloud auth activate-service-account لمعرفة كيفية إجراء ذلك).

  3. فعِّل واجهات برمجة التطبيقات المطلوبة. بعد تسجيل الدخول باستخدام حساب الخدمة: في صفحة "مكتبة واجهات برمجة التطبيقات" في Google Developers Console، فعِّل Google Cloud Testing API وCloud Tool Results API. ل تفعيل واجهات برمجة التطبيقات هذه، اكتب أسماء واجهات برمجة التطبيقات هذه في مربّع البحث في أعلى وحدة التحكّم، ثم انقر على تفعيل واجهة برمجة التطبيقات في صفحة النظرة العامة على واجهة برمجة التطبيقات هذه.

تثبيت Jenkins وإعداده

يمكنك تثبيت Jenkins CI وإعداده على Linux أو Windows. ترتبط تفاصيل معيّنة في هذا الدليل بتثبيت Jenkins CI وتشغيله على Linux، بما في ذلك استخدام الشرطة المائلة (/) في مسارات الملفات.

لتنزيل Jenkins وتثبيته على جهاز كمبيوتر يعمل بنظام التشغيل Linux أو Windows، اتّبِع التعليمات الواردة في مقالة تثبيت IDE IDE Jenkins. بعد تثبيت Jenkins، اتّبِع التعليمات الواردة في مقالة بدء Jenkins والوصول إليه لإكمال عملية الإعداد والوصول إلى لوحة بيانات Jenkins.

ضبط إعدادات الأمان العامة

لا يتم ضبط مصادقة المستخدمين وإمكانية الوصول إلى Jenkins عند تثبيته لأول مرة. قبل استخدام Jenkins مع Firebase Test Lab، عليك ضبط إعدادات الأمان العام لفرض التحكّم في الوصول ومصادقة المستخدمين.

لضبط إعدادات الأمان العامة

  1. انتقِل إلى لوحة بيانات Jenkins على خادمك. لإجراء ذلك، انتقِل إلى http://<servername>:8080، حيث يكون <servername> هو اسم جهاز الكمبيوتر الذي ثبَّت عليه Jenkins.
  2. في لوحة بيانات Jenkins، انقر على Manage Jenkins (إدارة Jenkins)، ثم انقر على Configure Global Security (ضبط إعدادات الأمان العام).
  3. في صفحة إعداد الأمان العام، انقر على تفعيل الأمان، ثم انقر على حفظ.

لمزيد من المعلومات حول ضبط إعدادات الأمان في Jenkins، اطّلِع على مقالتَي أمان سريع وبسيط وإعداد الأمان العادي وتأمين Jenkins.

إنشاء مشروع Jenkins

بعد ذلك، أنشئ مشروعًا لإجراء اختبار التكامل المستمر لتطبيقك باستخدام Firebase Test Lab.

لإنشاء مشروع Jenkins

  1. انتقِل إلى لوحة بيانات Jenkins على خادمك. لإجراء ذلك، انتقِل إلى http://<servername>:8080، حيث يكون <servername> هو اسم جهاز الكمبيوتر الذي ثبَّت عليه Jenkins.
  2. في لوحة بيانات Jenkins، انقر على عنصر جديد.
  3. اكتب اسمًا لمشروعك في حقل اسم العنصر:
    • اختَر مشروع Freestyle لإنشاء مشروع يستخدم إعدادات ملف ترجمة واحدًا.
    • اختَر إنشاء مشروع يتضمّن إعدادات متعددة لإنشاء مشروع يعمل على إعدادات إنشاء متعددة مختلفة. إذا كنت تخطّط لإنشاء تطبيقك باستخدام مجموعة متنوعة من إعدادات الإنشاء (إعدادات لغة متعددة، ومستويات متعددة لواجهة برمجة التطبيقات Android، وما إلى ذلك)، فإنّ المشروع المتعدّد الإعدادات هو الخيار الأفضل.
  4. انقر على حفظ.

بعد إنشاء مشروعك، يعرض متصفّح الويب الصفحة الرئيسية لمشروعك.

إضافة خطوات التحكّم في المراجع وخطوات إنشاء Gradle

يوضّح هذا القسم كيفية دمج Jenkins مع أنظمة التحكّم في الإصدارات، مثل GitHub، وكيفية إضافة خطوات إنشاء Gradle لإنشاء حِزم APK من رمز المصدر.

الدمج مع GitHub وأنظمة التحكّم في المراجعات الأخرى

إذا كنت تستخدم GitHub أو نظامًا آخر للتحكّم في المراجع لإدارة رمز المصدر لتطبيقك، يمكنك ضبط Jenkins لتشغيل عمليات الإنشاء المبرمَجة وإجراء الاختبارات في كل مرة يتم فيها تسجيل تحديثات تطبيقك. يمكنك أيضًا ضبط Jenkins لتشغيل عمليات الإنشاء بشكل دوري.

للتعرّف على كيفية ضبط عمليات الإنشاء في Jenkins، يُرجى الاطّلاع على مقالة ضبط عمليات الإنشاء التلقائية.

إضافة خطوات إنشاء Gradle لإعادة إنشاء حِزم APK

إذا كنت تستخدم نظامًا للتحكّم في الإصدارات لإدارة رمز المصدر لتطبيقك، عليك تضمين خطوة إنشاء Gradle لإنشاء ملفات APK ثنائية جديدة في كل مرة يتم فيها تنزيل رمز المصدر من نظام التحكّم في الإصدارات.

  1. أضِف خطوة إنشاء لتشغيل الأوامر التالية في الدليل الرئيسي ل تطبيقك:

    ./gradlew :app:assembleDebug
    ./gradlew :app:assembleDebugAndroidTest
    

  2. أضِف خطوة إنشاء لاستخدام حِزم APK التي أنشأها Gradle عند اختبار باستخدام Test Lab. يمكنك استخدام هذا المسار <local_server_path> في مثال النص البرمجي لنظام التشغيل Shell الوارد أدناه، حيث يكون <AppFolder> هو مجلد مشروع "استوديو Android" لتطبيقك:

    <AppFolder>/app/build/outputs/apk
    

إضافة Test Lab خطوات الإنشاء إلى Jenkins

أنت الآن مستعد لإضافة خطوة إنشاء إلى Jenkins لتشغيل Test Lab باستخدام سطر أوامر gcloud.

لإضافة خطوة إنشاء gcloud

  1. من الصفحة الرئيسية لمشروعك، انقر على ضبط.
  2. في صفحة إعدادات المشروع، انتقِل للأسفل إلى قسم الإنشاء، ثم اختَر تنفيذ shell من قائمة إضافة خطوة إنشاء.

  3. في نافذة Jenkins Execute shell command، أدخِل ما يلي، مع استبدال <local_server_path> بمسار تطبيقك التجريبي على الخادم، و<app_apk> بملف APK لتطبيقك، و<app_test_apk> بملف APK لتطبيقك التجريبي:

    gcloud firebase test android run --app <local_server_path>/<app_apk>.apk
    --test <local_server_path>/<app_test_apk>.apk
    

تحليل نتائج الاختبار

بعد أن يُكمل Test Lab اختبار تطبيقك، يمكنك مراجعة نتائج الاختبار في وحدة تحكّم Firebase أو في حزمة Google Cloud Storage في مشروعك. يمكنك أيضًا إضافة الأمر gsutil إلى الأمر shell المعروض أعلاه لنسخ بيانات نتائج الاختبار إلى جهاز الكمبيوتر المحلي. لمزيد من المعلومات، اطّلِع على مقالة تحليل نتائج Firebase Test Lab.

التكامل المستمر مع أنظمة التكامل المستمر الأخرى

للتعرّف على كيفية استخدام Firebase Test Lab مع أنظمة التطوير المتداخل الأخرى، يمكنك الاطّلاع على المستندات التالية: