تتيح لك أداة 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
command
في واجهة سطر الأوامر gcloud. يتم تحديث القائمة في
المتوسط مرة واحدة في السنة.
نوع النظام الأساسي والجهاز | مجموعة عناوين IP وفقًا لأسلوب CIDR |
---|---|
الأجهزة الفعلية التي تعمل بنظامَي التشغيل Android وiOS، والأجهزة الافتراضية التي تعمل بمعالجات Arm |
70.32.128.0/19 (تمت الإضافة في 02-2022) 108.177.6.0/23 108.177.18.192/26 (تمت الإضافة في شباط/فبراير 2022) 108.177.29.64/27 (تم توسيع القسم في 02-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 (تمّت الإضافة 02-2022) 70.32.128.48/28 (تمت الإضافة في 04/2024) |
الأجهزة الافتراضية التي تعمل بنظام التشغيل Android (غير المستندة إلى معمارية Arm) |
34.68.194.64/29 (تمّت الإضافة في تشرين الثاني (نوفمبر) 2019) 34.69.234.64/29 (تمت الإضافة في 11-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 (تمت الإضافة في 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 (تمت الإضافة في تموز/يوليو 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) |