تتيح لك أداة Firebase Test Lab اختبار جودة تطبيقك على مجموعة من الأجهزة والإعدادات. يقدّم هذا الدليل نظرة عامة على المفاهيم الرئيسية في Test Lab، وعروض iOS، والتعليمات حول كيفية بدء الاختبار.
للحصول على معلومات عن حصص Test Lab وخطط الأسعار، يُرجى الاطّلاع على الاستخدام والحصص والأسعار.
المفاهيم والمصطلحات الرئيسية
عند إجراء اختبار أو مجموعة من حالات الاختبار على الأجهزة والإعدادات التي اختَرتها، Test Lab يُجري الاختبار على تطبيقك في دفعة واحدة، ثم يعرض النتائج على شكل مصفوفة اختبار.
الأجهزة × عمليات تنفيذ الاختبار = مصفوفة الاختبار
- الجهاز
- جهاز فعلي أو افتراضي (لنظام التشغيل Android فقط) يتم إجراء الاختبار عليه، مثل هاتف أو جهاز لوحي أو جهاز قابل للارتداء يتم تحديد الأجهزة في مصفوفة الاختبار من خلال طراز الجهاز وإصدار نظام التشغيل واتجاه الشاشة واللغة (المعروفة أيضًا باسم إعدادات الموقع الجغرافي واللغة).
- الاختبار، تنفيذ الاختبار
- اختبار (أو مجموعة من حالات الاختبار) المطلوب إجراؤه على جهاز يمكنك إجراء اختبار واحد لكل جهاز، أو تقسيم الاختبار وتشغيل حالات الاختبار على أجهزة مختلفة اختياريًا.
- مصفوفة الاختبار
- يحتوي على حالات عمليات تنفيذ الاختبار ونتائجه. إذا تعذّر تنفيذ أي اختبار في مصفوفة، ستتعذّر تنفيذ المصفوفة بأكملها.
الخطوة 1: تجهيز الاختبار لتحميله إلى Test Lab
يمكنك إجراء الاختبارات التالية باستخدام Test Lab. يُرجى العِلم أنّه يمكن تنفيذ جميع أنواع الاختبار في غضون 45 دقيقة كحد أقصى على الأجهزة الفعلية، وسيؤدي أي استثناء لم يتم رصده إلى تعذُّر إكمال الاختبار.
XCTest (بما في ذلك XCUITests): اختبار وحدة كتبته باستخدام إطار عمل XCTest. يُرجى الانتقال إلى مقالة إنشاء اختبار XCTest للحصول على تعليمات حول تعديل اختبار XCTest لتشغيله باستخدام Test Lab.
اختبار حلقة الألعاب: اختبار يستخدم "وضع تجريبي" ل simulating تصرفات اللاعبين في تطبيقات الألعاب. وهذه طريقة سريعة وقابلة للتطوير للتحقّق من أنّ أداء لعبتك جيد للمستخدمين. عند اختيار إجراء اختبار Game Loop، يمكنك إجراء ما يلي:
كتابة اختبارات أصلية لمحرّك لعبتك
تجنَّب كتابة الرمز البرمجي نفسه لمختلف واجهات المستخدم أو منصّات اختبار التطبيقات.
يمكنك اختياريًا إنشاء حلقات متعددة لتنفيذها في عملية اختبار واحدة. يمكنك أيضًا تنظيم الحلقات باستخدام التصنيفات حتى تتمكّن من تتبُّعها و إعادة تشغيل حلقات معيّنة.
انتقِل إلى مقالة تشغيل اختبار حلقة الألعاب للحصول على تعليمات عن كيفية تشغيل الاختبار في Test Lab.
الخطوة 2: اختيار أداة لإجراء الاختبار
يمكنك اختيار الأدوات التالية لإجراء الاختبار:
تتيح لك وحدة تحكّم Firebase تحميل أحد التطبيقات وبدء الاختبار من أي مكان. اطّلِع على الاختبار باستخدام وحدة تحكّم Firebase للحصول على تعليمات حول استخدام هذه الأداة.
تتيح لك واجهة سطر الأوامر gcloud إجراء الاختبارات من سطر الأوامر بشكل تفاعلي، وهي مناسبة أيضًا لكتابة النصوص البرمجية كأحد أجزاء عملية الإنشاء والاختبار المبرمَجة. اطّلِع على الاختبار باستخدام gcloud CLI للحصول على تعليمات حول استخدام هذه الأداة.
قبل الاختبار على الأجهزة الحقيقية، يمكنك إجراء الاختبار على جهاز محاكاة محلي للتأكّد من أنّه يعمل على النحو المطلوب. اطّلِع على الاختبار على الجهاز للحصول على التعليمات.
الخطوة 3: تحديد أجهزة الاختبار
باستخدام Test Lab، يمكنك إجراء اختبار تطبيقك على مجموعة كبيرة من أجهزة iOS ونماذجها المستضافة في مركز بيانات Google. لمزيد من المعلومات، يُرجى الاطّلاع على الأجهزة المتاحة.
الخطوة 4: مراجعة نتائج الاختبار
بغض النظر عن كيفية بدء اختباراتك، تتم إدارة جميع نتائج اختباراتك من خلال Test Lab ويمكن الاطّلاع عليها على الإنترنت.
يتم تخزين ملخّص نتائج الاختبار تلقائيًا ويمكن الاطّلاع عليه في وحدة تحكّم Firebase. يحتوي التقرير على البيانات الأكثر صلة باختبارك، بما في ذلك الفيديوهات الخاصة بحالة الاختبار، ولقطات الشاشة، وعدد الاختبارات التي نجحت أو تعذّر إكمالها أو التي أظهرت نتائج غير متّسقة، وغيرها.
تحتوي نتائج الاختبار الأوّلية على سجلّات الاختبار وتفاصيل أعطال التطبيق، ويتم تخزينها تلقائيًا في حزمة Google Cloud. في حال تحديد حزمة، تكون أنت المسؤول عن تكلفة مساحة التخزين. إذا لم تحدِّد حزمة، Test Lab تنشئ حزمة لك بدون أي تكلفة.
لمزيد من التفاصيل، يُرجى الاطّلاع على مقالة تحليل نتائج Firebase Test Lab.
تنظيف الجهاز
تتعامل Google مع أمان بيانات تطبيقك بمنتهى الجدية. نتّبع أفضل الممارسات المتّبعة في المجال لإزالة بيانات التطبيقات وإعادة ضبط إعدادات النظام للأجهزة المتوفّرة بشكلٍ مادي بعد كل عملية اختبار للتأكّد من أنّها جاهزة لإجراء اختبارات جديدة. بالنسبة إلى الأجهزة التي يمكننا إعادة تحميلها باستخدام ملف برمجي مخصّص لإعادة التمهيد، نأخذ خطوة إضافية من خلال إعادة تحميل هذه الأجهزة بين عمليات الاختبار.
بالنسبة إلى الأجهزة الافتراضية التي يستخدمها Test Lab، يتم حذف نُسخ الأجهزة بعد استخدامها لكي يستخدم كلّ إجراء اختبار نسخة جديدة من الجهاز الافتراضي.
السماح لأجهزة Test Lab بالوصول إلى خوادم الخلفية الخاصة
تحتاج بعض تطبيقات الأجهزة الجوّالة إلى التواصل مع خدمات الخلفية الخاصة لكي تعمل بشكلٍ صحيح أثناء الاختبار. إذا كانت خوادم الخلفية محمية بقواعد جدار الحماية، يمكنك السماح بالوصول إلى الأجهزة المادية والافتراضية في 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 (تمت الإضافة في شباط (فبراير) 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) 70.32.128.48/28 (تمت الإضافة في 04/2024) |
الأجهزة الافتراضية التي تعمل بنظام التشغيل 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) |