إجراء اختبار Robo (على أجهزة Android)

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

يلتقط اختبار Robo ملفات السجلّ ويحفظ سلسلة من لقطات الشاشة التي تتضمّن تعليقات توضيحية، ثم ينشئ فيديو من لقطات الشاشة هذه ليعرض لك عمليات محاكاة المستخدمين التي أجراها. يمكن أن تساعدك هذه السجلات ولقطات الشاشة ومقاطع الفيديو في تحديد السبب الجذري لأعطال التطبيق. يمكن أن تساعدك ميزات اختبار Robo هذه أيضًا في العثور على المشاكل المتعلقة بواجهة المستخدم في تطبيقك.

بالإضافة إلى إجراء اختبارات Robo بشكل منتظم، يمكنك تخصيص اختباراتك باستخدام نصوص Robo البرمجية، وهي إحدى ميزات اختبارات Robo. لمزيد من المعلومات، يمكنك الاطّلاع على مقالة تشغيل نص Robo برمجي.

إذا كنت تريد تجربة الإصدار التجريبي من Robo على أجهزة iOS+ ، يُرجى الاطّلاع على إجراء اختبار Robo.

إحصاءات الزحف من خلال Robo الاختبارية

لمساعدتك في تفسير نتائج اختبار Robo، يسجِّل اختبار Robo الإحصاءات خلال كل عملية زحف اختبار. يعرض مركز الاختبار الافتراضي الإحصائيات أعلى علامة تبويب اختبار Robo في صفحة نتائج الاختبار:

  • الإجراءات: إجمالي عدد الإجراءات التي تم تنفيذها أثناء الزحف، بما في ذلك إجراءات نص Robo البرمجي وإجراءات القرد وتوجيهات Robo

  • الأنشطة: عدد الأنشطة المميزة التي تمت تغطيتها أثناء الزحف.

  • الشاشات: عدد الشاشات المختلفة التي تمت زيارتها أثناء الزحف.

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

مهلة اختبار Robo

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

أخطاء انتهاء مهلة بدء تشغيل التطبيق

إذا استغرق بدء تشغيل تطبيقك وقتًا طويلاً، يمكن أن يؤدي اختبار Robo إلى حدوث خطأ ولن يتمكّن من الزحف إلى تطبيقك. لا يحدث ذلك إلا في حال بدء التشغيل لفترة طويلة جدًا، ولا يمكن حلّه إلا من خلال مراجعة التطبيق لتشغيل التطبيق بشكل أسرع.

إمكانية تحكُّم إضافية باستخدام نصوص Robo البرمجية

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

اختبارات Robo والتطبيقات المصغّرة غير المتوافقة مع واجهة المستخدم على أجهزة Android

تستخدم اختبارات Robo واجهة برمجة تطبيقات Android لتنفيذ الإجراءات على تطبيقات واجهة المستخدم المصغّرة من Android مباشرةً. يساعد ذلك الاختبارات في استكشاف واجهة المستخدم تلقائيًا، ولكنه يعني أيضًا أنّها يجب أن تكون قادرة على استخراج التسلسل الهرمي لواجهة مستخدم Android على الشاشة من أجل إجراء الاختبارات عليها.

إذا كانت إحدى شاشات تطبيقك لا تستخدم تطبيقات واجهة المستخدم المصغّرة من Android، يعود Robo إلى العودة إلى تطبيق Monkey Actions لاختبار تلك الشاشة. على عكس إجراءات اختبار Robo المنهجية، تعمل إجراءات القرود ببساطة على محاكاة أحداث النقر في المواقع شبه العشوائية على شاشة الجهاز.

لتحسين الشاشات التي لا تستخدم تطبيقات واجهة المستخدم المصغّرة من Android، يمكنك استبدال النقرات العشوائية في لعبة Monkey Action بمجموعة من النقرات والتفاعلات المكتوبة من خلال Firebase Test Lab Game Loop Tests.

التكامل مع Google Play

يمكنك استخدام اختبار Robo في Google Play Console عند تحميل ملف APK لتطبيقك ونشره باستخدام القناة الأولية أو القناة التجريبية. ويتم إجراء اختبار روبو على مجموعة من الأجهزة المادية الشائعة من مواقع جغرافية مختلفة، ما يوفّر تغطية اختبارية على مستوى مختلف أشكال الأجهزة وإعدادات الأجهزة. لمعرفة المزيد من المعلومات، يمكنك الاطّلاع على استخدام تقارير الإطلاق التجريبي لتحديد المشاكل.

اختبار تسجيل الدخول إلى الحساب وإدخال النص المحدَّد مسبقًا

يتيح اختبار Robo تسجيل الدخول إلى الحساب التجريبي، ويتيح لك أيضًا إدخال نص محدّد مسبقًا في حقول التطبيق. لتسجيل الدخول المخصَّص وإدخال نص آخر محدَّد مسبقًا، يمكن لاختبار Robo إدخال نص في حقول EditText في تطبيقك. عليك تحديد الحقل EditText لكل سلسلة باستخدام اسم مورد في Android. لمزيد من المعلومات، يُرجى الاطّلاع على الوصول إلى الموارد.

تسجيل الدخول

يتوفّر في اختبار Robo طريقتان حصريتان لإتاحة تسجيل الدخول:

  • تسجيل دخول مخصّص: إذا قدّمت بيانات اعتماد الحساب التجريبي، عليك إخبار Robo بمكان إدخال بيانات الاعتماد هذه، وتقديم بيانات الاعتماد هذه أيضًا.

  • تسجيل الدخول تلقائيًا: إذا كان تطبيقك يتضمّن شاشة تسجيل دخول تستخدم حساب Google للمصادقة، يستخدم برنامج Robo الاختبارية حسابًا تجريبيًا على Google، ما لم توفّر بيانات اعتماد الحساب التجريبي لتسجيل الدخول المخصَّص.

لتقديم بيانات اعتماد الحساب التجريبي لتسجيل الدخول المخصّص، عليك اتّباع الخطوات التالية:

  1. في صفحة اختيار السمات، اختَر خيارات إضافية.

  2. ضمن بيانات اعتماد الحساب التجريبي (اختياري)، أدخِل اسم المستخدم وكلمة المرور لاسم المستخدم وكلمة المرور للحساب التجريبي.

إدخال النص المحدَّد مسبقًا

يمكنك توفير نص إدخال مخصّص لحقول النص الأخرى التي يستخدمها تطبيقك. لتوفير إدخال نصي للحقول الإضافية، عليك اتّباع الخطوات التالية:

  1. في صفحة اختيار السمات، اختَر خيارات إضافية.

  2. ضمن حقول إضافية (اختياري)، أدخِل اسم مورد واحدًا أو أكثر، والسلاسل المطلوب إدخالها في الحقول النصية المقابلة.

أخطاء إدخال النص المحدَّد مسبقًا {:#preified-text}

يبحث اختبار Robo عن حقول EditText باستخدام اسم مورد Android يتطابق مع التعبير العادي المقدَّم. إذا لم يتمكن Robo من العثور على حقل مطابق، لن يُدخل النص، ولكنه يواصل الزحف كالمعتاد.

يمكنك توفير ما يصل إلى ثلاثة روابط لصفحات في التطبيق يتوافق مع تطبيقك للاختبار. يتم إصدار روابط لصفحات في تطبيقك كأهداف ACTION_VIEW لـ Android. وبالتالي، يجب أن يتطابق كل رابط مع فلتر أهداف في تطبيقك.

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

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

دعم ترخيص التطبيقات

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

الخطوات اللاحقة