بدء الاختبار باستخدام أنظمة التكامل المستمر (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. إنشاء حساب خدمة وتفويضه لا تخضع حسابات الخدمة لعمليات التحقّق من الرسائل غير المرغوب فيها أو طلبات التحقّق من CAPTCHA، والتي قد تؤدي إلى حظر عمليات إنشاء CI. أنشئ حساب خدمة بدور محرِّر في وحدة تحكّم Google Cloud ثم فعِّله (اطّلِع على مستندات 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، اتّبِع التعليمات الواردة في مقالة تثبيت Jenkins. بعد تثبيت Jenkins، اتّبِع التعليمات الواردة في بدء Jenkins والوصول إليه لإكمال عملية الإعداد والوصول إلى لوحة بيانات Jenkins.

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

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

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

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

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

إنشاء مشروع Jenkins

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    <AppFolder>/app/build/outputs/apk
    

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

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

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

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

  3. في نافذة أمر واجهة Jenkins Execute، أدخِل ما يلي، مع استبدال <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 إلى أمر واجهة الأوامر الموضّح أعلاه لنسخ بيانات نتائج الاختبار إلى جهاز الكمبيوتر المحلي. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة تحليل نتائج "Firebase Test Lab".

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

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