يتيح لك "Firebase Test Lab" اختبار تطبيقك على مجموعة من الأجهزة والإعدادات. يوفّر لك دليل البدء هذا مسارًا للتنفيذ يمكنك اتّباعه، بالإضافة إلى مقدّمة حول عروض Android من Test Lab.
للحصول على معلومات حول حصص Test Lab وخطط الأسعار، يُرجى الاطّلاع على الاستخدام والحصص والأسعار.
المفاهيم الرئيسيّة
عند إجراء اختبار أو مجموعة من إطارات الاختبار على الأجهزة والإعدادات التي اخترتها، تُجري أداة Test Lab الاختبار على تطبيقك في دفعة واحدة، ثم تعرض النتائج في شكل مصفوفة تجريبية.
الأجهزة × عمليات التنفيذ التجريبي = المصفوفة التجريبية
- الجهاز
- هو جهاز مادي أو افتراضي (يعمل بنظام التشغيل Android فقط) يتم إجراء الاختبار عليه، مثل هاتف أو جهاز لوحي أو جهاز قابل للارتداء. يتم تحديد الأجهزة في مصفوفة تجريبية من خلال طراز الجهاز وإصدار نظام التشغيل واتجاه الشاشة واللغة (المعروفة أيضًا باسم إعدادات الموقع الجغرافي واللغة).
- الاختبار، تنفيذ الاختبار
- اختبار (أو مجموعة من إطارات الاختبار) يتم إجراؤه على جهاز. ويمكنك إجراء اختبار واحد لكل جهاز، أو تقسيم الاختبار وإجراء حالات الاختبار على أجهزة مختلفة.
- مصفوفة تجريبية
- يحتوي على الحالات ونتائج الاختبارات لعمليات التنفيذ التجريبي. إذا تعذّر تنفيذ أي اختبار في مصفوفة، ستتعذّر المصفوفة بأكملها.
الخطوة 1: تجهيز الاختبار لتحميله إلى Test Lab
أنواع الاختبارات المتاحة
يمكنك إجراء الاختبارات التالية باستخدام Test Lab. يُرجى العِلم أنّ جميع أنواع الاختبارات تقتصر على التشغيل لمدة 45 دقيقة على الأجهزة الفعلية و60 دقيقة على الأجهزة الافتراضية. سيؤدي أي استثناء لم يتم اكتشافه إلى تعذُّر الاختبار.
اختبار لقياس حالة التطبيق أو اختبار وحدة لقياس حالة التطبيق: هو اختبار كتبته باستخدام إطار عمل Espresso أو UI Automator. من خلال هذا الاختبار، يمكنك تقديم تأكيدات صريحة حول حالة تطبيقك للتحقّق من صحة وظائفه باستخدام AndroidJUnitRunnerAPIs.
انتقِل إلى صفحة إجراء اختبار لقياس حالة التطبيق للحصول على تعليمات حول كيفية إعداد الاختبار لتشغيله في Test Lab.
يُرجى الرجوع إلى مستندات مطوّري برامج Android للحصول على تعليمات حول كيفية إنشاء اختبار لقياس حالة التطبيق.
اختبار 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 (تمت إضافته في 02-2022) 2001:4860:1018::/48 (تمت إضافته في شباط/فبراير 2022) 2001:4860:1019::/48 (تمت إضافته في شباط/فبراير 2022) 2001:4860:1020::/48 (تمت إضافته في شباط/فبراير 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 (تمت إضافته في 05-2026) 2001:4860:1038::/48 (تمت إضافته في مايو 2026) 2001:4860:103a::/48 (تمت إضافته في 05-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) |