اختبار 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
اعتمادًا على مدى تعقيد واجهة المستخدم لتطبيقك ، قد يستغرق اختبار 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 ، فإن اختبارات Robo تعود إلى Monkey Actions لاختبار تلك الشاشة. على عكس إجراءات اختبار Robo الأكثر منهجية ، تحاكي Monkey Actions ببساطة أحداث النقر على مواقع شبه عشوائية على شاشة الجهاز.
لاختبار الشاشات التي لا تستخدم أدوات واجهة مستخدم Android بشكل أفضل ، يمكنك استبدال النقرات العشوائية لـ Monkey Action بمجموعة من النقرات والتفاعلات المبرمجة من خلال Firebase Test Lab Game Loop Tests .
التكامل مع جوجل بلاي
يمكنك استخدام اختبار Robo في Google Play Console عند تحميل ونشر ملف APK لتطبيقك باستخدام إما قناة ألفا أو بيتا. يتم تشغيل اختبار Robo على مجموعة من الأجهزة المادية الشهيرة من مواقع جغرافية مختلفة ، مما يوفر تغطية اختبارية عبر عوامل الشكل المختلفة وتكوينات الأجهزة. لمعرفة المزيد ، راجع استخدام تقارير الإطلاق التجريبي لتحديد المشكلات .
اختبار تسجيل الدخول إلى الحساب وإدخال النص المحدد مسبقًا
يدعم اختبار Robo تسجيل الدخول إلى الحساب التجريبي ، ويسمح لك أيضًا بإدخال نص محدد مسبقًا في الحقول في تطبيقك. لتسجيل الدخول المخصص وإدخال النص المحدد مسبقًا ، يمكن أن يقوم اختبار Robo بإدخال نص في حقول EditText
في تطبيقك. لكل سلسلة ، تحتاج إلى تحديد حقل EditText
باستخدام اسم مورد Android. لمعرفة المزيد ، راجع الوصول إلى الموارد .
تسجيل الدخول
يحتوي اختبار Robo على طريقتين حصريتين لدعم تسجيل الدخول:
تسجيل الدخول المخصص: إذا قدمت بيانات اعتماد حساب تجريبي ، فستحتاج إلى إخبار اختبار Robo بمكان إدخالها ، وكذلك تقديم بيانات الاعتماد هذه.
تسجيل الدخول التلقائي: إذا كان تطبيقك يحتوي على شاشة تسجيل دخول تستخدم حساب Google للمصادقة ، فإن اختبار Robo يستخدم حساب اختبار Google ، ما لم تقدم بيانات اعتماد حساب اختباري لتسجيل الدخول المخصص.
لتوفير بيانات اعتماد حساب اختباري لتسجيل الدخول المخصص ، قم بما يلي:
في صفحة تحديد الأبعاد ، اختر خيارات إضافية .
ضمن بيانات اعتماد الحساب التجريبي (اختياري) ، أدخل اسم المستخدم وكلمة المرور اسمي الموارد واسم المستخدم وكلمة المرور لحساب الاختبار.
إدخال نص محدد مسبقًا
يمكنك توفير نص إدخال مخصص لحقول النص الأخرى التي يستخدمها تطبيقك. لتوفير إدخال نص لحقول إضافية ، قم بما يلي:
في صفحة تحديد الأبعاد ، اختر خيارات إضافية .
ضمن حقول إضافية (اختياري) ، أدخل اسمًا واحدًا أو أكثر من أسماء الموارد ، والسلاسل المطلوب إدخالها في حقول النص المقابلة.
إدخال نص محدد مسبقًا {: # predefined-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.
الخطوات التالية
- خصص اختباراتك باستخدام نصوص Robo النصية .
اختبار 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
اعتمادًا على مدى تعقيد واجهة المستخدم لتطبيقك ، قد يستغرق اختبار 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 ، فإن اختبارات Robo تعود إلى Monkey Actions لاختبار تلك الشاشة. على عكس إجراءات اختبار Robo الأكثر منهجية ، تحاكي Monkey Actions ببساطة أحداث النقر على مواقع شبه عشوائية على شاشة الجهاز.
لاختبار الشاشات التي لا تستخدم أدوات واجهة مستخدم Android بشكل أفضل ، يمكنك استبدال النقرات العشوائية لـ Monkey Action بمجموعة من النقرات والتفاعلات المبرمجة من خلال Firebase Test Lab Game Loop Tests .
التكامل مع جوجل بلاي
يمكنك استخدام اختبار Robo في Google Play Console عند تحميل ونشر ملف APK لتطبيقك باستخدام إما قناة ألفا أو بيتا. يتم تشغيل اختبار Robo على مجموعة من الأجهزة المادية الشهيرة من مواقع جغرافية مختلفة ، مما يوفر تغطية اختبارية عبر عوامل الشكل المختلفة وتكوينات الأجهزة. لمعرفة المزيد ، راجع استخدام تقارير الإطلاق التجريبي لتحديد المشكلات .
اختبار تسجيل الدخول إلى الحساب وإدخال النص المحدد مسبقًا
يدعم اختبار Robo تسجيل الدخول إلى الحساب التجريبي ، ويسمح لك أيضًا بإدخال نص محدد مسبقًا في الحقول في تطبيقك. لتسجيل الدخول المخصص وإدخال النص المحدد مسبقًا ، يمكن أن يقوم اختبار Robo بإدخال نص في حقول EditText
في تطبيقك. لكل سلسلة ، تحتاج إلى تحديد حقل EditText
باستخدام اسم مورد Android. لمعرفة المزيد ، راجع الوصول إلى الموارد .
تسجيل الدخول
يحتوي اختبار Robo على طريقتين حصريتين لدعم تسجيل الدخول:
تسجيل الدخول المخصص: إذا قدمت بيانات اعتماد حساب تجريبي ، فستحتاج إلى إخبار اختبار Robo بمكان إدخالها ، وكذلك تقديم بيانات الاعتماد هذه.
تسجيل الدخول التلقائي: إذا كان تطبيقك يحتوي على شاشة تسجيل دخول تستخدم حساب Google للمصادقة ، فإن اختبار Robo يستخدم حساب اختبار Google ، ما لم تقدم بيانات اعتماد حساب اختباري لتسجيل الدخول المخصص.
لتوفير بيانات اعتماد حساب اختباري لتسجيل الدخول المخصص ، قم بما يلي:
في صفحة تحديد الأبعاد ، اختر خيارات إضافية .
ضمن بيانات اعتماد الحساب التجريبي (اختياري) ، أدخل اسم المستخدم وكلمة المرور اسمي الموارد واسم المستخدم وكلمة المرور لحساب الاختبار.
إدخال نص محدد مسبقًا
يمكنك توفير نص إدخال مخصص لحقول النص الأخرى التي يستخدمها تطبيقك. لتوفير إدخال نص لحقول إضافية ، قم بما يلي:
في صفحة تحديد الأبعاد ، اختر خيارات إضافية .
ضمن حقول إضافية (اختياري) ، أدخل اسمًا واحدًا أو أكثر من أسماء الموارد ، والسلاسل المطلوب إدخالها في حقول النص المقابلة.
إدخال نص محدد مسبقًا {: # predefined-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.
الخطوات التالية
- خصص اختباراتك باستخدام نصوص Robo النصية .
اختبار 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
اعتمادًا على مدى تعقيد واجهة المستخدم لتطبيقك ، قد يستغرق اختبار 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 ، فإن اختبارات Robo تعود إلى Monkey Actions لاختبار تلك الشاشة. على عكس إجراءات اختبار Robo الأكثر منهجية ، تحاكي Monkey Actions ببساطة أحداث النقر على مواقع شبه عشوائية على شاشة الجهاز.
لاختبار الشاشات التي لا تستخدم أدوات واجهة مستخدم Android بشكل أفضل ، يمكنك استبدال النقرات العشوائية لـ Monkey Action بمجموعة من النقرات والتفاعلات المبرمجة من خلال Firebase Test Lab Game Loop Tests .
التكامل مع جوجل بلاي
يمكنك استخدام اختبار Robo في Google Play Console عند تحميل ونشر ملف APK لتطبيقك باستخدام إما قناة ألفا أو بيتا. يتم تشغيل اختبار Robo على مجموعة من الأجهزة المادية الشهيرة من مواقع جغرافية مختلفة ، مما يوفر تغطية اختبارية عبر عوامل الشكل المختلفة وتكوينات الأجهزة. لمعرفة المزيد ، راجع استخدام تقارير الإطلاق التجريبي لتحديد المشكلات .
اختبار تسجيل الدخول إلى الحساب وإدخال النص المحدد مسبقًا
يدعم اختبار Robo تسجيل الدخول إلى الحساب التجريبي ، ويسمح لك أيضًا بإدخال نص محدد مسبقًا في الحقول في تطبيقك. لتسجيل الدخول المخصص وإدخال النص المحدد مسبقًا ، يمكن أن يقوم اختبار Robo بإدخال نص في حقول EditText
في تطبيقك. لكل سلسلة ، تحتاج إلى تحديد حقل EditText
باستخدام اسم مورد Android. لمعرفة المزيد ، راجع الوصول إلى الموارد .
تسجيل الدخول
يحتوي اختبار Robo على طريقتين حصريتين لدعم تسجيل الدخول:
تسجيل الدخول المخصص: إذا قدمت بيانات اعتماد حساب تجريبي ، فستحتاج إلى إخبار اختبار Robo بمكان إدخالها ، وكذلك تقديم بيانات الاعتماد هذه.
تسجيل الدخول التلقائي: إذا كان تطبيقك يحتوي على شاشة تسجيل دخول تستخدم حساب Google للمصادقة ، فإن اختبار Robo يستخدم حساب اختبار Google ، ما لم تقدم بيانات اعتماد حساب اختباري لتسجيل الدخول المخصص.
لتوفير بيانات اعتماد حساب اختباري لتسجيل الدخول المخصص ، قم بما يلي:
في صفحة تحديد الأبعاد ، اختر خيارات إضافية .
ضمن بيانات اعتماد الحساب التجريبي (اختياري) ، أدخل اسم المستخدم وكلمة المرور اسمي الموارد واسم المستخدم وكلمة المرور لحساب الاختبار.
إدخال نص محدد مسبقًا
يمكنك توفير نص إدخال مخصص لحقول النص الأخرى التي يستخدمها تطبيقك. لتوفير إدخال نص لحقول إضافية ، قم بما يلي:
في صفحة تحديد الأبعاد ، اختر خيارات إضافية .
ضمن حقول إضافية (اختياري) ، أدخل اسمًا واحدًا أو أكثر من أسماء الموارد ، والسلاسل المطلوب إدخالها في حقول النص المقابلة.
إدخال نص محدد مسبقًا {: # predefined-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.
الخطوات التالية
- خصص اختباراتك باستخدام نصوص Robo النصية .
اختبار 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
اعتمادًا على مدى تعقيد واجهة المستخدم لتطبيقك ، قد يستغرق اختبار 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 ، فإن اختبارات Robo تعود إلى Monkey Actions لاختبار تلك الشاشة. على عكس إجراءات اختبار Robo الأكثر منهجية ، تحاكي Monkey Actions ببساطة أحداث النقر على مواقع شبه عشوائية على شاشة الجهاز.
لاختبار الشاشات التي لا تستخدم أدوات واجهة مستخدم Android بشكل أفضل ، يمكنك استبدال النقرات العشوائية لـ Monkey Action بمجموعة من النقرات والتفاعلات المبرمجة من خلال Firebase Test Lab Game Loop Tests .
التكامل مع جوجل بلاي
يمكنك استخدام اختبار Robo في Google Play Console عند تحميل ونشر ملف APK لتطبيقك باستخدام إما قناة ألفا أو بيتا. يتم تشغيل اختبار Robo على مجموعة من الأجهزة المادية الشهيرة من مواقع جغرافية مختلفة ، مما يوفر تغطية اختبارية عبر عوامل الشكل المختلفة وتكوينات الأجهزة. لمعرفة المزيد ، راجع استخدام تقارير الإطلاق التجريبي لتحديد المشكلات .
اختبار تسجيل الدخول إلى الحساب وإدخال النص المحدد مسبقًا
يدعم اختبار Robo تسجيل الدخول إلى الحساب التجريبي ، ويسمح لك أيضًا بإدخال نص محدد مسبقًا في الحقول في تطبيقك. لتسجيل الدخول المخصص وإدخال النص المحدد مسبقًا ، يمكن أن يقوم اختبار Robo بإدخال نص في حقول EditText
في تطبيقك. لكل سلسلة ، تحتاج إلى تحديد حقل EditText
باستخدام اسم مورد Android. لمعرفة المزيد ، راجع الوصول إلى الموارد .
تسجيل الدخول
يحتوي اختبار Robo على طريقتين حصريتين لدعم تسجيل الدخول:
تسجيل الدخول المخصص: إذا قدمت بيانات اعتماد حساب تجريبي ، فستحتاج إلى إخبار اختبار Robo بمكان إدخالها ، وكذلك تقديم بيانات الاعتماد هذه.
تسجيل الدخول التلقائي: إذا كان تطبيقك يحتوي على شاشة تسجيل دخول تستخدم حساب Google للمصادقة ، فإن اختبار Robo يستخدم حساب اختبار Google ، ما لم تقدم بيانات اعتماد حساب اختباري لتسجيل الدخول المخصص.
لتوفير بيانات اعتماد حساب اختباري لتسجيل الدخول المخصص ، قم بما يلي:
في صفحة تحديد الأبعاد ، اختر خيارات إضافية .
ضمن بيانات اعتماد الحساب التجريبي (اختياري) ، أدخل اسم المستخدم وكلمة المرور اسمي الموارد واسم المستخدم وكلمة المرور لحساب الاختبار.
إدخال نص محدد مسبقًا
يمكنك توفير نص إدخال مخصص لحقول النص الأخرى التي يستخدمها تطبيقك. لتوفير إدخال نص لحقول إضافية ، قم بما يلي:
في صفحة تحديد الأبعاد ، اختر خيارات إضافية .
ضمن حقول إضافية (اختياري) ، أدخل اسمًا واحدًا أو أكثر من أسماء الموارد ، والسلاسل المطلوب إدخالها في حقول النص المقابلة.
إدخال نص محدد مسبقًا {: # predefined-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.
الخطوات التالية
- خصص اختباراتك باستخدام نصوص Robo النصية .