تتيح لك خدمة Firebase Test Lab اختبار تطبيقك على مجموعة متنوّعة من الأجهزة و الإعدادات. يقدّم دليل "البدء" هذا مسارًا لتنفيذ الاختبارات لك لتتبعه، بالإضافة إلى مقدّمة عن عروض Test Lab's على Android.
للحصول على معلومات عن حصص 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 للحصول على تعليمات حول إجراء الاختبارات باستخدام هذه الأداة.Firebase
يتيح لك التكامل مع "استوديو Android" اختبار تطبيقك بدون مغادرة بيئة التطوير. يُرجى الانتقال إلى صفحة الاختبار باستخدام "استوديو Android" للحصول على تعليمات حول إجراء الاختبارات باستخدام هذه الأداة.
تتيح لك واجهة سطر الأوامر gcloud إجراء الاختبارات من سطر الأوامر بشكل تفاعلي، كما أنّها مناسبة تمامًا لكتابة النصوص البرمجية كـ جزء من عملية الإنشاء والاختبار الآلية. يُرجى الانتقال إلى صفحة الاختبار باستخدام واجهة سطر الأوامر gcloud للحصول على تعليمات حول إجراء الاختبارات باستخدام هذه الأداة.
يمكنك أيضًا اختبار تطبيقك بدون أي تكلفة باستخدام Test Lab عند تحميل ملفات APK الخاصة بتطبيقك ونشرها على "متجر Play" باستخدام قناة ألفا أو قناة الإصدار التجريبي. لمزيد من المعلومات، يُرجى الاطّلاع على صفحة استخدام تقارير الإطلاق التجريبي لتحديد المشاكل واختبارات Robo.
الخطوة 2: اختيار جهاز الاختبار
Test Lab تتيح خدمة إجراء الاختبار على عدة أنواع وطُرز من أجهزة Android المثبّتة والجارية في مركز بيانات Google. يساعدك إجراء الاختبار على الأجهزة في Test Lab في رصد المشاكل التي قد لا تظهر عند اختبار تطبيقك باستخدام المحاكيات في "استوديو Android". لمزيد من المعلومات، يُرجى الاطّلاع على صفحة الأجهزة المتاحة.
الخطوة 3: مراجعة نتائج الاختبار
بغض النظر عن كيفية بدء الاختبارات، تدير Test Lab جميع نتائج الاختبارات ويمكنك الاطّلاع عليها على الإنترنت.
يتم تلقائيًا تخزين ملخّص نتائج الاختبار ويمكنك الاطّلاع عليه في وحدة تحكّم Firebase. يحتوي على البيانات الأكثر صلة باختبارك، بما في ذلك الفيديوهات ولقطات الشاشة الخاصة بحالات الاختبار، وعدد الاختبارات التي تم اجتيازها أو تعذّر إجراؤها أو التي حصلت على نتائج غير موثوق بها، وغير ذلك.
تحتوي نتائج الاختبار الأولية على سجلّات الاختبار وتفاصيل تعذّر التطبيق، ويتم تخزينها تلقائيًا في حزمة Google Cloud. إذا حدّدت حزمة، ستكون مسؤولاً عن تكلفة التخزين. إذا لم تحدّد حزمة، Test Lab تنشئ لك حزمة بدون أي تكلفة.
لمزيد من التفاصيل، يُرجى الاطّلاع على صفحة تحليل النتائج.Firebase Test Lab
عند بدء اختبار من استوديو Android، يمكنك أيضًا مراجعة نتائج الاختبار من داخل بيئة التطوير.
تنظيف الجهاز
تتعامل Google بجدية تامة مع أمان بيانات تطبيقك. نتبع أفضل الممارسات المتوافقة مع معايير المجال لإزالة بيانات التطبيق وإعادة ضبط إعدادات النظام للأجهزة الفعلية بعد كل عملية إجراء اختبار لضمان استعدادها لإجراء اختبارات جديدة. بالنسبة إلى الأجهزة التي يمكننا تثبيت صورة استرداد مخصّصة عليها، نتخذ خطوة إضافية من خلال تثبيت ذاكرة ROM على هذه الأجهزة بين عمليات إجراء الاختبار.
بالنسبة إلى الأجهزة الافتراضية التي تستخدمها Test Lab، يتم حذف مثيلات الأجهزة بعد استخدامها حتى تستخدم كل عملية إجراء اختبار مثيلاً جديدًا لجهاز افتراضي.
Test Lab و"خدمات Google Play"
تعمل أجهزة Test Lab عادةً على أحدث إصدار من حزمة تطوير البرامج (SDK) لخدمات Google Play ، ولكن قد يستغرق تحديث بعضها بضعة أيام بعد طرح إصدار جديد من حزمة SDK. يُرجى العِلم أنّه قد تواجه مشاكل في التوافق مع بعض الأجهزة.
السماح لأجهزة الاختبار بالوصول إلى خوادم الخلفية الخاصة
تحتاج بعض تطبيقات الأجهزة الجوّالة إلى التواصل مع خدمات الخلفية الخاصة لكي تعمل بشكل صحيح أثناء الاختبار. إذا كانت خوادم الخلفية محمية بقواعد جدار الحماية ، يمكنك السماح بالوصول إلى الأجهزة الفعلية والافتراضية في Test Lab's باستخدام مجموعات عناوين 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 (تمت إضافتها في فبراير 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) |