ابدأ اختبار Android باستخدام Firebase Test Lab

يتيح لك Firebase Test Lab اختبار تطبيقك على مجموعة من الأجهزة والتكوينات. يوفر دليل البدء هذا مسار تنفيذ يمكنك اتباعه، بالإضافة إلى مقدمة لعروض Android الخاصة بـ Test Lab.

للحصول على معلومات حول حصص Test Lab وخطط التسعير، راجع الاستخدام والحصص والتسعير .

المفاهيم الرئيسية

عندما تقوم بتشغيل اختبار أو مجموعة من حالات الاختبار على الأجهزة والتكوينات التي حددتها، يقوم Test Lab بإجراء الاختبار على تطبيقك دفعة واحدة، ثم يعرض النتائج كمصفوفة اختبار .

الأجهزة × عمليات تنفيذ الاختبار = مصفوفة الاختبار

جهاز
جهاز فعلي أو افتراضي (Android فقط) تجري عليه اختبارًا، مثل الهاتف أو الجهاز اللوحي أو الجهاز القابل للارتداء. يتم تحديد الأجهزة الموجودة في مصفوفة الاختبار حسب طراز الجهاز وإصدار نظام التشغيل واتجاه الشاشة والإعدادات المحلية (المعروفة أيضًا بإعدادات الجغرافيا واللغة).
الاختبار، تنفيذ الاختبار
اختبار (أو مجموعة من حالات الاختبار) ليتم تشغيلها على الجهاز. يمكنك إجراء اختبار واحد لكل جهاز، أو اختياريًا تقسيم الاختبار وتشغيل حالات الاختبار الخاصة به على أجهزة مختلفة.
مصفوفة الاختبار
يحتوي على الحالات ونتائج الاختبار لعمليات تنفيذ الاختبار. إذا فشل أي اختبار في تنفيذ المصفوفة، فستفشل المصفوفة بأكملها.

الخطوة 1 : قم بإعداد الاختبار الخاص بك للتحميل إلى Test Lab

أنواع الاختبار المتاحة

يمكنك إجراء الاختبارات التالية باستخدام Test Lab. لاحظ أن جميع أنواع الاختبارات تقتصر على التشغيل لمدة 45 دقيقة على الأجهزة الفعلية و60 دقيقة على الأجهزة الافتراضية. أي استثناء لم يتم اكتشافه سيؤدي إلى فشل الاختبار.

  • اختبار الأجهزة أو اختبار الوحدة المُجهزة : اختبار كتبته باستخدام أطر عمل Espresso أو UI Automator . باستخدام هذا الاختبار، يمكنك تقديم تأكيدات صريحة حول حالة تطبيقك للتحقق من الأداء الوظيفي الصحيح باستخدام AndroidJUnitRunnerAPIs .

  • اختبار Robo : اختبار تلقائي يحلل واجهة مستخدم تطبيقك ثم يستكشفها بشكل منهجي من خلال محاكاة أنشطة المستخدم، دون مطالبتك بكتابة أي تعليمات برمجية. قم بزيارة حول اختبارات Robo لمزيد من المعلومات.

  • اختبار Game Loop : اختبار يستخدم "الوضع التجريبي" لمحاكاة تصرفات اللاعب في تطبيقات الألعاب. هذه طريقة سريعة وقابلة للتطوير للتحقق من أن لعبتك تعمل بشكل جيد للمستخدمين. عندما تختار تشغيل اختبار Game Loop، يمكنك:

    • اكتب الاختبارات الأصلية لمحرك اللعبة الخاص بك

    • تجنب كتابة نفس الكود لواجهات مستخدم أو أطر اختبار مختلفة

    • يمكنك اختياريًا إنشاء حلقات متعددة لتشغيلها في تنفيذ اختبار واحد (تفضل بزيارة اختبارات About Game Loop لمعرفة المزيد). يمكنك أيضًا تنظيم الحلقات باستخدام التسميات حتى تتمكن من تعقبها وإعادة تشغيل حلقات معينة.

    راجع تشغيل اختبار Game Loop للحصول على إرشادات حول تشغيل هذا الاختبار باستخدام Test Lab.

أدوات لتشغيل الاختبار الخاص بك

يمكنك اختيار الأدوات التالية لإجراء الاختبار باستخدام:

  • موصى به للمستخدمين لأول مرة : تتيح لك وحدة تحكم Firebase تحميل تطبيق وبدء الاختبار من متصفح الويب الخاص بك. راجع الاختبار باستخدام وحدة تحكم Firebase للحصول على إرشادات حول إجراء الاختبارات باستخدام هذه الأداة.

  • يتيح لك تكامل Android Studio اختبار تطبيقك دون مغادرة بيئة التطوير الخاصة بك. راجع الاختبار باستخدام Android Studio للحصول على إرشادات حول إجراء الاختبارات باستخدام هذه الأداة.

  • تمكنك واجهة سطر أوامر gcloud من تشغيل الاختبارات من سطر الأوامر بشكل تفاعلي، كما أنها مناسبة تمامًا للبرمجة النصية كجزء من عملية الإنشاء والاختبار الآلية. راجع الاختبار باستخدام gcloud CLI للحصول على إرشادات حول تشغيل الاختبارات باستخدام هذه الأداة.

يمكنك أيضًا اختبار تطبيقك دون أي تكلفة من خلال Test Lab عند تحميل ملفات APK لتطبيقك ونشرها على متجر Play باستخدام إما قناة ألفا أو قناة بيتا. لمزيد من المعلومات، راجع استخدام تقارير الإطلاق التجريبي لتحديد المشكلات واختبارات Robo .

الخطوة 2 : اختر جهاز الاختبار الخاص بك

يدعم Test Lab الاختبار على العديد من الماركات والموديلات لأجهزة Android المثبتة والمشغلة في مركز بيانات Google. يساعدك الاختبار على الأجهزة في Test Lab على اكتشاف المشكلات التي قد لا تحدث عند اختبار تطبيقك باستخدام المحاكيات في Android Studio. لمعرفة المزيد، راجع الأجهزة المتوفرة.

الخطوة 3 : مراجعة نتائج الاختبار

بغض النظر عن كيفية بدء اختباراتك، تتم إدارة جميع نتائج الاختبار الخاصة بك بواسطة Test Lab ويمكن الاطلاع عليها عبر الإنترنت.

يتم تخزين ملخص نتيجة الاختبار تلقائيًا ويمكن مشاهدته في وحدة تحكم Firebase. فهو يحتوي على البيانات الأكثر صلة باختبارك، بما في ذلك مقاطع الفيديو الخاصة بحالة الاختبار ولقطات الشاشة وعدد الاختبارات التي نجحت أو فشلت أو حصلت على نتائج غير مستقرة والمزيد.

تحتوي نتائج الاختبار الأولية على سجلات الاختبار وتفاصيل فشل التطبيق، ويتم تخزينها تلقائيًا في مجموعة Google Cloud. إذا قمت بتحديد دلو، فأنت مسؤول عن تكلفة التخزين. إذا لم تقم بتحديد حاوية، فسيقوم Test Lab بإنشاء واحدة لك دون أي تكلفة.

لمزيد من التفاصيل، راجع تحليل نتائج معمل اختبار Firebase.

عند بدء اختبار من Android Studio ، يمكنك أيضًا مراجعة نتائج الاختبار من داخل بيئة التطوير الخاصة بك.

تنظيف الجهاز

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

بالنسبة للأجهزة الافتراضية التي يستخدمها Test Lab، يتم حذف مثيلات الجهاز بعد استخدامها بحيث يستخدم كل تشغيل اختبار مثيل جهاز ظاهري جديد.


خدمات Test Lab وGoogle Play

عادةً ما تعمل أجهزة Test Lab على أحدث إصدار من Google Play Services SDK، ولكن قد يتطلب بعضها بضعة أيام للتحديث بعد إصدار إصدار جديد من SDK. لاحظ أنك قد تواجه مشكلات في التوافق مع بعض الأجهزة.

السماح لأجهزة الاختبار بالوصول إلى خوادم الواجهة الخلفية الخاصة

تحتاج بعض تطبيقات الأجهزة المحمولة إلى التواصل مع خدمات الواجهة الخلفية الخاصة لتعمل بشكل صحيح أثناء الاختبار. إذا كانت خوادم الواجهة الخلفية الخاصة بك محمية بقواعد جدار الحماية، فيمكنك السماح بالوصول إلى الأجهزة الفعلية والافتراضية الخاصة بـ Test Lab باستخدام كتل عناوين IP أدناه لفتح المسارات عبر جدار الحماية الخاص بك.

الإعلان المحمول

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

للتخفيف من هذه المشكلة:

  • إذا كنت تستخدم أو تعمل مع موفري إعلانات رقمية تابعة لجهات خارجية (على سبيل المثال، شبكات الإعلانات أو منصات جانب الطلب)، فمن المستحسن استخدام الإعلانات الاختبارية بدلاً من الإعلانات الحقيقية أثناء تطوير التطبيق واختباره.

  • إذا كان يجب عليك استخدام إعلانات حقيقية في الاختبار الخاص بك، فأخبر موفري الإعلانات الرقمية الذين تعمل معهم لتصفية الإيرادات وجميع الزيارات المقابلة الناتجة عن Test Lab باستخدام كتل عناوين IP أدناه . لا يتعين عليك إخطار موفري الإعلانات المملوكين لشركة Google؛ يعتني Test Lab بذلك نيابةً عنك.

عناوين IP التي تستخدمها أجهزة Test Lab

تنشأ جميع حركة مرور الشبكة التي تم إنشاؤها بواسطة أجهزة Test Lab من كتل عناوين IP التالية. يمكنك أيضًا الوصول إلى هذه القائمة باستخدام أمر gcloud beta firebase test ip-blocks list في gcloud CLI. يتم تحديث القائمة في المتوسط ​​مرة واحدة في السنة.

نوع المنصة والجهاز كتلة عنوان IP CIDR
الأجهزة المادية التي تعمل بنظام Android وiOS، وأجهزة Arm الافتراضية

70.32.128.0/19 (أضيف في 02-2022)

108.177.6.0/23

108.177.18.192/26 (أضيف في 02-2022)

108.177.29.64/27 (موسع 02-2022)

108.177.31.160/27 (أضيف في 02-2022)

199.36.156.8/29 (أضيف في 02-2022)

199.36.156.16/28 (أضيف في 02-2022)

209.85.131.0/27 (أضيف في 02-2022)

2001:4860:1008::/48 (أضيف 02-2022)

2001:4860:1018::/48 (أضيف 02-2022)

2001:4860:1019::/48 (أضيف 02-2022)

2001:4860:1020::/48 (أضيف 02-2022)

2001:4860:1022::/48 (أضيف 02-2022)

أجهزة Android الافتراضية (غير الذراعية)

34.68.194.64/29 (أضيف في 11-2019)

34.69.234.64/29 (أضيفت في 11-2019)

34.73.34.72/29 (أضيف في 11-2019)

34.73.178.72/29 (أضيف في 11-2019)

34.74.10.72/29 (أضيف في 02-2022)

34.136.2.136/29 (أضيف في 02-2022)

34.136.50.136/29 (أضيف في 02-2022)

34.145.234.144/29 (أضيف في 02-2022)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27 (أضيف في 7-2019)

35.245.243.240/29 (أضيف في 02-2022)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

لم تعد كتل IP الخاصة بالجهاز قيد الاستخدام

74.125.122.32/29 (تمت الإزالة في 02-2022)

216.239.44.24/29 (تمت الإزالة في 02-2022)