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

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

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

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

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

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

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

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

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

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

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

مهلة اختبار Robo

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

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

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

مزيد من التحكّم باستخدام نصوص Robo البرمجية

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

اختبارات Robo وعناصر واجهة المستخدم غير المستندة إلى Android

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

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

لاختبار الشاشات التي لا تستخدم عناصر واجهة مستخدم Android بشكل أفضل، يمكنك استبدال النقرات العشوائية لإجراء Monkey بمجموعة من النقرات والتفاعلات المبرمَجة من خلال Firebase Test Lab اختبارات حلقة الألعاب.

التكامل مع Google Play

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

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

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

تسجيل الدخول

يتضمّن اختبار Robo طريقتَين متنافيتَين لتسجيل الدخول:

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

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

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

  1. في صفحة اختيار السمات ، انقر على خيارات إضافية.

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

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

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

  1. في صفحة اختيار السمات ، انقر على خيارات إضافية.

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

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

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

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

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

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

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

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

الخطوات التالية