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

Robo test هي أداة اختبار مدمجة مع 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 test في شكل رسم بياني للزحف. يتضمّن الرسم البياني الشاشات بصفتها عقدًا و الإجراءات بصفتها حوافًا. من خلال تتبُّع الحواف بين الشاشات، يمكنك الحصول على فكرة عن كيفية تنقّل اختبار Robo في تطبيقك أثناء الزحف.

مهلة اختبار Robo

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

أخطاء وقت الاستراحة في بدء تشغيل التطبيق

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

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

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

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

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

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

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

الدمج مع Google Play

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

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

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

تسجيل الدخول

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

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

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

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

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

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

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

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

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

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

أخطاء إدخال النص المحدّد مسبقًا {:#preified-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.

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