تشغيل اختبار Robo (Android)

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

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

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

إذا كنت تريد تجربة الإصدار التجريبي من Robo لنظام التشغيل iOS+، فراجع إجراء اختبار Robo .

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

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

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

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

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

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

مهلة اختبار روبو

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

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

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

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

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

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

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

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

لاختبار الشاشات التي لا تستخدم أدوات Android UI بشكل أفضل، يمكنك استبدال النقرات العشوائية لـ Monkey Action بمجموعة من النقرات والتفاعلات المكتوبة من خلال Firebase Test Lab Game Loop Tests .

التكامل مع جوجل بلاي

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

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

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

تسجيل الدخول

يشتمل اختبار Robo على طريقتين حصريتين لدعم تسجيل الدخول:

  • تسجيل الدخول المخصص: إذا قدمت بيانات اعتماد حساب اختباري، فستحتاج إلى إخبار Robo test بمكان إدخالها، وكذلك تقديم بيانات الاعتماد هذه.

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

لتوفير بيانات اعتماد الحساب التجريبي لتسجيل الدخول المخصص، قم بما يلي:

  1. في صفحة تحديد الأبعاد ، اختر خيارات إضافية .

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

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

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

  1. في صفحة تحديد الأبعاد ، اختر خيارات إضافية .

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

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

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

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

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

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

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

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

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