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

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

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

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

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

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

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

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

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

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

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

مهلة اختبار Robo

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

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

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

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

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

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

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

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

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

الدمج مع Google Play

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

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

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

تسجيل الدخول

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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