بدء اختبار تطبيقات Android باستخدام مركز الاختبار الافتراضي لمنصة Firebase

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

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

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

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

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

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

الخطوة 1: تجهيز الاختبار لتحميله إلى Test Lab

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

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

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

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

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

    • كتابة اختبارات متوافقة مع محرّك لعبتك

    • تجنُّب كتابة الرمز نفسه لواجهات مستخدم أو أُطر عمل اختبارية مختلفة

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

    يُرجى الاطّلاع على إجراء اختبار حلقة الألعاب للحصول على تعليمات حول إجراء هذا الاختبار باستخدام Test Lab.

أدوات لإجراء الاختبار

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

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

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

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

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

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

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

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

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

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

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

لمزيد من التفاصيل، يُرجى الاطّلاع على تحليل نتائج "Firebase Test Lab".

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

إخلاء مساحة على الجهاز

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

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


‫"Test Lab" و"خدمات Google Play"

تعمل أجهزة Test Lab عادةً على أحدث إصدار من حزمة تطوير البرامج (SDK) لخدمات Google Play، ولكن قد يتطلّب بعضها بضعة أيام للتحديث بعد طرح إصدار جديد من حزمة تطوير البرامج (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. يتم تحديث القائمة في المتوسط مرة واحدة في السنة.

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

‫70.32.128.0/19 (تمت إضافته في شباط/فبراير 2022)

108.177.6.0/23

‫108.177.18.192/26 (تمت إضافته في شباط/فبراير 2022)

‫108.177.29.64/27 (تمت توسعته في فبراير 2022)

‫108.177.31.160/27 (تمت إضافته في شباط/فبراير 2022)

‫199.36.156.8/29 (تمت إضافته في شباط/فبراير 2022)

‫199.36.156.16/28 (تمت إضافته في شباط/فبراير 2022)

‫209.85.131.0/27 (تمت إضافته في شباط/فبراير 2022)

‫2001:4860:1008::/48 (تمت إضافته في شباط/فبراير 2022)

‫2001:4860:1018::/48 (تمت إضافته في شباط/فبراير 2022)

‫2001:4860:1019::/48 (تمت إضافته في شباط/فبراير 2022)

‫2001:4860:1020::/48 (تمت إضافته في 02-2022)

‫2001:4860:1022::/48 (تمت إضافته في شباط/فبراير 2022)

‫2001:4860:101d::/48 (تمت إضافته في أكتوبر 2025)

‫2001:4860:101e::/48 (تمت إضافته في أكتوبر 2025)

‫2001:4860:1031::/48 (تمت إضافته في أكتوبر 2025)

‫70.32.128.48/28 (تمت إضافته في أبريل 2024)

‫70.32.150.192/27 (تمت إضافته في سبتمبر 2025)

‫108.177.6.0/27 (تمت إضافته في سبتمبر 2025)

‫108.177.24.160/27 (تمت إضافته في سبتمبر 2025)

‫108.177.29.0/27 (تمت إضافته في سبتمبر 2025)

‫108.177.25.128/27 (تمت إضافته في مايو 2026)

‫108.177.26.128/26 (تمت إضافته في مايو 2026)

‫108.177.29.192/26 (تمت إضافته في مايو 2026)

‫172.217.120.64/26 (تمت إضافته في مايو 2026)

‫172.217.120.128/26 (تمت إضافته في مايو 2026)

‫2001:4860:1037::/48 (تمت إضافته في مايو 2026)

‫2001:4860:1038::/48 (تمت إضافته في مايو 2026)

‫2001:4860:103a::/48 (تمت إضافته في مايو 2026)

الأجهزة الافتراضية المتوافقة مع Android (غير المستندة إلى Arm)

‫34.68.194.64/29 (تمت إضافته في تشرين الثاني/نوفمبر 2019)

‫34.69.234.64/29 (تمت إضافته في تشرين الثاني/نوفمبر 2019)

‫34.73.34.72/29 (تمت إضافته في تشرين الثاني/نوفمبر 2019)

‫34.73.178.72/29 (تمت إضافته في تشرين الثاني/نوفمبر 2019)

‫34.74.10.72/29 (تمت إضافته في شباط/فبراير 2022)

‫34.136.2.136/29 (تمت إضافته في فبراير 2022)

‫34.136.50.136/29 (تمت إضافته في شباط/فبراير 2022)

‫34.145.234.144/29 (تمت إضافته في شباط/فبراير 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 (تمت إضافته في تموز/يوليو 2019)

‫35.245.243.240/29 (تمت إضافته في فبراير 2022)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

لم يعُد يتم استخدام حظر عناوين IP للأجهزة

‫74.125.122.32/29 (تمت إزالته في شباط/فبراير 2022)

‫216.239.44.24/29 (تمت إزالته في شباط/فبراير 2022)