يصف هذا المستند كيفية استخدام نصوص Robo النصية ، وهي اختبارات تعمل على أتمتة مهام ضمان الجودة اليدوية لتطبيقات الأجهزة المحمولة ، وتمكين التكامل المستمر (CI) واستراتيجيات اختبار ما قبل التشغيل. على سبيل المثال ، يمكنك استخدام نصوص Robo النصية لاختبار رحلة مستخدم شائعة أو توفير إدخال محدد لواجهة المستخدم (UI) ، مثل اسم المستخدم وكلمة المرور. نصوص Robo هي إحدى ميزات اختبار Robo .
باستخدام نصوص Robo النصية ، يمكنك تسجيل نفسك أثناء سير العمل في تطبيقك ، ثم تقوم بتحميل هذا التسجيل إلى وحدة تحكم Firebase لتشغيله في اختبارات Robo. عند تشغيل اختبار Robo مع نص مرفق ، يخطو Robo أولاً من خلال إجراءاتك المكتوبة مسبقًا ثم يستكشف التطبيق كالمعتاد.
تستخدم نصوص Robo النصية اختبار Robo كمحرك اختبار. في أبسط أشكاله ، يتكون نص Robo النصي من سلسلة من إجراءات واجهة المستخدم مثل إدخال النص "اسم المستخدم" ثم انقر فوق الزر "موافق" . يمكن أن تتضمن نصوص Robo النصية أيضًا إجراءات مثل انتظار ظهور عنصر ، والنقر عند نقطة معينة داخل العنصر ، وتنفيذ أوامر shell في Android Debug Bridge ( adb
).
تستخدم نصوص Robo النصية اختبار Robo كمحرك اختبار. في أبسط أشكاله ، يتكون نص Robo النصي من سلسلة من إجراءات واجهة المستخدم مثل إدخال النص "اسم المستخدم" ثم انقر فوق الزر "موافق" . يمكن أن تتضمن نصوص Robo النصية أيضًا إجراءات مثل انتظار ظهور عنصر ، والنقر عند نقطة معينة داخل العنصر ، وتنفيذ أوامر shell في Android Debug Bridge ( adb
).
تتمتع نصوص Robo بالمزايا التالية مقارنة بأطر الاختبار التقليدية:
الإمكانية | وصف |
قوي للغاية | يمكن أن تتسامح نصوص Robo مع الاختلافات الهيكلية والسلوكية الكبيرة بين إصدارات التطبيق وتقلب التطبيق. |
مفتوح | بعد اكتمال نص Robo النصي ، يمكن أن يتولى اختبار Robo الأساسي ويواصل اختبار التطبيق. يتيح نهج الاختبار المستمر هذا العديد من حالات الاستخدام الرئيسية. على سبيل المثال ، يمكنك استخدام نص Robo النصي لجلب تطبيق إلى حالة معينة من خلال تنفيذ تدفق تسجيل دخول مخصص. |
قابل للتسجيل | لست بحاجة إلى ترميز نصوص Robo النصية يدويًا. يمكن تسجيلها باستخدام مسجل البرامج النصية Robo في Android Studio. عادةً لا يتطلب إنشاء نصوص Robo النصية أو تعديلها أي معرفة بتطوير الأجهزة المحمولة. |
مرن | يمكن أن تتفاعل نصوص Robo النصية مع عناصر واجهة المستخدم غير الأصلية الشائعة في الألعاب. |
يتم تشغيل نصوص Robo النصية بشكل مشروط أثناء اختبار Robo ، مما يتيح للمستخدمين تعزيز سلوك Robo - عادةً لتحقيق تغطية أكبر أو استهداف وظائف معينة. على عكس أطر الاختبار التقليدية ، تدعم نصوص Robo النصية ما يلي:
- شروط تشغيل مختلفة ، على سبيل المثال ، اسم حزمة تطبيق معين نشط (أو لا) أو عنصر معين معروض على الشاشة (أو لا).
- ضوابط التنفيذ ، على سبيل المثال ، الحد الأقصى لعدد عمليات التنفيذ ، والأولوية ، ومرحلة الزحف ذات الصلة.
- أنواع الإجراءات غير التقليدية (شرطي ، تجاهل العنصر ، إغلاق الشاشة).
نوصي باستخدام نصوص Robo النصية كلما أمكن ذلك لأنه يمكن صيانتها بسهولة. على سبيل المثال ، يمكنك استخدام برنامج نصي Robo للقيام بما يلي:
- انتقل إلى مهام سير العمل المهمة للوصول إلى جوهر وظائف التطبيق. على سبيل المثال ، يمكنك تسجيل الدخول وإعداد حالة التطبيق بعد التشغيل الأول وتسجيل مستخدم جديد.
- ركز Robo على جزء معين من التطبيق لتحقيق أقصى استفادة من وقت اختبار Robo. يوجه برنامج Robo النصي اختبار Robo للوصول إلى الجزء ذي الصلة من التطبيق ، حيث يستأنف اختبار Robo الزحف الآلي بالكامل.
- قم بإحضار تطبيق إلى حالة أو شاشة معينة لإجراء تحليل ، على سبيل المثال ، لتحليل رسالة داخل التطبيق أو سياسة الخصوصية أو مستوى معين من اللعبة.
- قم بإجراء اختبار شامل للأجهزة ، مع أو بدون اختبار Robo لاستئناف الزحف الآلي بالكامل بعد اكتمال نص Robo النصي.
استخدم ميزات نصية Robo البرمجية الأكثر تقدمًا للقيام بما يلي:
- نفذ الإجراءات قبل أن يبدأ Robo في الزحف إلى التطبيق قيد الاختبار أو بعد انتهاء الزحف ، على سبيل المثال ، تنظيف بيانات التطبيق قيد الاختبار قبل الزحف أو تغيير إعدادات الجهاز.
- غيّر جوانب سلوك Robo أثناء الزحف ، ولا سيما:
- اجعل Robo يتجاهل بعض أدوات واجهة المستخدم أو شاشات التطبيقات.
- قدم إجراءً مخصصًا لـ Robo ليقوم به عند التراجع من شاشة معينة.
- اجعل Robo ينفذ إجراءات محددة كلما واجهت شاشة تطبيق معينة أثناء الزحف.
- تخصيص طريقة إجراء Robo للزحف بالكامل. على سبيل المثال ، استخدم مجموعة من الإجراءات الشرطية وغير المشروطة لإبقاء التطبيق قيد الاختبار في الخلفية طوال عملية الزحف ، أثناء إجراء عمليات التلاعب بالجهاز واستبعاد أي مربعات حوار منبثقة تظهر على طول الطريق.
ضع في اعتبارك أن نصوص Robo لا تحل محل جميع أنواع الاختبارات. ما زلت بحاجة إلى اختبارات الوحدة للقبض على الأخطاء المنطقية منخفضة المستوى في تطبيقك ؛ لا تتطلب هذه الاختبارات عادةً بيئة Android أو iOS. نوصي بأن تكمل اختبارات Robo النصية باختبارات الأجهزة المستهدفة التي يمكن أن تحتوي على تأكيدات محددة ومفصلة حول منطق الأعمال ، والتي يتم التعبير عنها بشكل أفضل في التعليمات البرمجية.
قم بتسجيل نص Robo النصي باستخدام Test Lab في Android Studio
يتيح لك مسجل البرامج النصية Robo في Android Studio تسجيل نصوص Robo النصية من خلال التفاعل مباشرة مع التطبيق الموجود على جهازك. اتبع هذه التعليمات لبدء البرمجة النصية لـ Robo من خلال أداة Firebase في Android Studio:
افتح Android Studio وحدد Tools -> Firebase .
في جزء Firebase ، انقر على تسجيل برنامج Robo النصي واستخدمه لتوجيه اختبار Robo .
انقر فوق تسجيل برنامج Robo النصي . يظهر مربع الحوار تحديد هدف النشر.
حدد الجهاز الذي تريد تسجيل نص Robo النصي فيه.
بعد تسجيل نص Robo النصي في الجهاز ، احفظ الملف كملف JSON في الموقع المطلوب.
افتح صفحة Test Lab في وحدة تحكم Firebase وقم بتحميل ملف البرنامج النصي JSON و APK للتطبيق.
انقر فوق الزر "متابعة" . يُطلب منك تحديد الجهاز ومستوى واجهة برمجة التطبيقات. بعد اكتمال البرنامج النصي للاختبار ، يقوم Test Lab بإنشاء تقرير الاختبار.
(اختياري) لنسخ أو تنزيل سجل تقرير الاختبار والفيديو ، انقر فوق عرض ملفات المصدر .
بشكل افتراضي ، تمنع آليات متانة نص Robo النصي من الفشل مبكرًا. إذا اخترت وضع التنفيذ strict
وفشل نص Robo النصي في أي وقت ، فإن Test Lab يتخلى عن جميع الخطوات الإضافية في البرنامج النصي ويستأنف زحف Robo العادي. في أغلب الأحيان ، تفشل نصوص Robo النصية لأن Robo لا يمكنه العثور على العنصر المطلوب على الشاشة. لتجنب الفشل ، تأكد من أن التنقل في التطبيق الخاص بك يمكن التنبؤ به وأن شاشاتك معروضة بترتيب محدد.
قم بتشغيل نص Robo النصي في Test Lab
لتشغيل نص Robo النصي في Test Lab ، اتبع التعليمات التالية:
افتح صفحة Test Lab في وحدة تحكم Firebase.
قم بتحميل APK أو AAB للتطبيق في التطبيق APK أو حقل AAB .
قم بتحميل ملف Robo النصي المسجل أو الذي تم إنشاؤه يدويًا في حقل نص Robo النصي (اختياري) .
قم بتوفير نص Robo لعملية تشغيل تجريبية محلية لـ Robo
لتوفير نص Robo النصي لتشغيل اختبار Robo محلي ، استخدم خيار اختبار Robo التالي:
--robo-script-file <robo-script-path>
استبدل <robo-script-path>
بمسار إلى ملف نص Robo النصي في نظام الملفات المحلي. اتبع التعليمات الخاصة بإجراء اختبار Robo محليًا .
حدد نص Robo النصي في استدعاء اختبار gcloud CLI
لتحديد نص Robo النصي في استدعاء اختبار gcloud CLI ، استخدم علامة gcloud CLI التالية:
--robo-script = <robo-script-path>
استبدل <robo-script-path>
بمسار إلى ملف نص Robo النصي في نظام الملفات المحلي أو في التخزين السحابي باستخدام gs://
notation. على سبيل المثال:
gcloud firebase test android run --app = <path_to_app_apk_file> --robo-script = <robo-script-path>
الخطوات التالية
- لمعرفة المزيد حول بنية البرامج النصية لـ Robo وإمكانياتها واستخدامها وإجراءاتها ، راجع الدليل المرجعي لنصوص Robo النصية .
- قم بإجراء اختبار Robo .
يصف هذا المستند كيفية استخدام نصوص Robo النصية ، وهي اختبارات تعمل على أتمتة مهام ضمان الجودة اليدوية لتطبيقات الأجهزة المحمولة ، وتمكين التكامل المستمر (CI) واستراتيجيات اختبار ما قبل التشغيل. على سبيل المثال ، يمكنك استخدام نصوص Robo النصية لاختبار رحلة مستخدم شائعة أو توفير إدخال محدد لواجهة المستخدم (UI) ، مثل اسم المستخدم وكلمة المرور. نصوص Robo هي إحدى ميزات اختبار Robo .
باستخدام نصوص Robo النصية ، يمكنك تسجيل نفسك أثناء سير العمل في تطبيقك ، ثم تقوم بتحميل هذا التسجيل إلى وحدة تحكم Firebase لتشغيله في اختبارات Robo. عند تشغيل اختبار Robo مع نص مرفق ، يخطو Robo أولاً من خلال إجراءاتك المكتوبة مسبقًا ثم يستكشف التطبيق كالمعتاد.
تستخدم نصوص Robo النصية اختبار Robo كمحرك اختبار. في أبسط أشكاله ، يتكون نص Robo النصي من سلسلة من إجراءات واجهة المستخدم مثل إدخال النص "اسم المستخدم" ثم انقر فوق الزر "موافق" . يمكن أن تتضمن نصوص Robo النصية أيضًا إجراءات مثل انتظار ظهور عنصر ، والنقر عند نقطة معينة داخل العنصر ، وتنفيذ أوامر shell في Android Debug Bridge ( adb
).
تستخدم نصوص Robo النصية اختبار Robo كمحرك اختبار. في أبسط أشكاله ، يتكون نص Robo النصي من سلسلة من إجراءات واجهة المستخدم مثل إدخال النص "اسم المستخدم" ثم انقر فوق الزر "موافق" . يمكن أن تتضمن نصوص Robo النصية أيضًا إجراءات مثل انتظار ظهور عنصر ، والنقر عند نقطة معينة داخل العنصر ، وتنفيذ أوامر shell في Android Debug Bridge ( adb
).
تتمتع نصوص Robo بالمزايا التالية مقارنة بأطر الاختبار التقليدية:
الإمكانية | وصف |
قوي للغاية | يمكن أن تتسامح نصوص Robo مع الاختلافات الهيكلية والسلوكية الكبيرة بين إصدارات التطبيق وتقلب التطبيق. |
مفتوح | بعد اكتمال نص Robo النصي ، يمكن أن يتولى اختبار Robo الأساسي ويواصل اختبار التطبيق. يتيح نهج الاختبار المستمر هذا العديد من حالات الاستخدام الرئيسية. على سبيل المثال ، يمكنك استخدام نص Robo النصي لجلب تطبيق إلى حالة معينة من خلال تنفيذ تدفق تسجيل دخول مخصص. |
قابل للتسجيل | لست بحاجة إلى ترميز نصوص Robo النصية يدويًا. يمكن تسجيلها باستخدام مسجل البرامج النصية Robo في Android Studio. عادةً لا يتطلب إنشاء نصوص Robo النصية أو تعديلها أي معرفة بتطوير الأجهزة المحمولة. |
مرن | يمكن أن تتفاعل نصوص Robo النصية مع عناصر واجهة المستخدم غير الأصلية الشائعة في الألعاب. |
يتم تشغيل نصوص Robo النصية بشكل مشروط أثناء اختبار Robo ، مما يتيح للمستخدمين تعزيز سلوك Robo - عادةً لتحقيق تغطية أكبر أو استهداف وظائف معينة. على عكس أطر الاختبار التقليدية ، تدعم نصوص Robo النصية ما يلي:
- شروط تشغيل مختلفة ، على سبيل المثال ، اسم حزمة تطبيق معين نشط (أو لا) أو عنصر معين معروض على الشاشة (أو لا).
- ضوابط التنفيذ ، على سبيل المثال ، الحد الأقصى لعدد عمليات التنفيذ ، والأولوية ، ومرحلة الزحف ذات الصلة.
- أنواع الإجراءات غير التقليدية (شرطي ، تجاهل العنصر ، إغلاق الشاشة).
نوصي باستخدام نصوص Robo النصية كلما أمكن ذلك لأنه يمكن صيانتها بسهولة. على سبيل المثال ، يمكنك استخدام برنامج نصي Robo للقيام بما يلي:
- انتقل إلى مهام سير العمل المهمة للوصول إلى جوهر وظائف التطبيق. على سبيل المثال ، يمكنك تسجيل الدخول وإعداد حالة التطبيق بعد التشغيل الأول وتسجيل مستخدم جديد.
- ركز Robo على جزء معين من التطبيق لتحقيق أقصى استفادة من وقت اختبار Robo. يوجه برنامج Robo النصي اختبار Robo للوصول إلى الجزء ذي الصلة من التطبيق ، حيث يستأنف اختبار Robo الزحف الآلي بالكامل.
- قم بإحضار تطبيق إلى حالة أو شاشة معينة لإجراء تحليل ، على سبيل المثال ، لتحليل رسالة داخل التطبيق أو سياسة الخصوصية أو مستوى معين من اللعبة.
- قم بإجراء اختبار شامل للأجهزة ، مع أو بدون اختبار Robo لاستئناف الزحف الآلي بالكامل بعد اكتمال نص Robo النصي.
استخدم ميزات نصية Robo البرمجية الأكثر تقدمًا للقيام بما يلي:
- نفذ الإجراءات قبل أن يبدأ Robo في الزحف إلى التطبيق قيد الاختبار أو بعد انتهاء الزحف ، على سبيل المثال ، تنظيف بيانات التطبيق قيد الاختبار قبل الزحف أو تغيير إعدادات الجهاز.
- غيّر جوانب سلوك Robo أثناء الزحف ، ولا سيما:
- اجعل Robo يتجاهل بعض أدوات واجهة المستخدم أو شاشات التطبيقات.
- قدم إجراءً مخصصًا لـ Robo ليقوم به عند التراجع من شاشة معينة.
- اجعل Robo ينفذ إجراءات محددة كلما واجهت شاشة تطبيق معينة أثناء الزحف.
- تخصيص طريقة إجراء Robo للزحف بالكامل. على سبيل المثال ، استخدم مجموعة من الإجراءات الشرطية وغير المشروطة لإبقاء التطبيق قيد الاختبار في الخلفية طوال عملية الزحف ، أثناء إجراء عمليات التلاعب بالجهاز واستبعاد أي مربعات حوار منبثقة تظهر على طول الطريق.
ضع في اعتبارك أن نصوص Robo لا تحل محل جميع أنواع الاختبارات. ما زلت بحاجة إلى اختبارات الوحدة للقبض على الأخطاء المنطقية منخفضة المستوى في تطبيقك ؛ لا تتطلب هذه الاختبارات عادةً بيئة Android أو iOS. نوصي بأن تكمل اختبارات Robo النصية باختبارات الأجهزة المستهدفة التي يمكن أن تحتوي على تأكيدات محددة ومفصلة حول منطق الأعمال ، والتي يتم التعبير عنها بشكل أفضل في التعليمات البرمجية.
قم بتسجيل نص Robo النصي باستخدام Test Lab في Android Studio
يتيح لك مسجل البرامج النصية Robo في Android Studio تسجيل نصوص Robo النصية من خلال التفاعل مباشرة مع التطبيق الموجود على جهازك. اتبع هذه التعليمات لبدء البرمجة النصية لـ Robo من خلال أداة Firebase في Android Studio:
افتح Android Studio وحدد Tools -> Firebase .
في جزء Firebase ، انقر على تسجيل برنامج Robo النصي واستخدمه لتوجيه اختبار Robo .
انقر فوق تسجيل برنامج Robo النصي . يظهر مربع الحوار تحديد هدف النشر.
حدد الجهاز الذي تريد تسجيل نص Robo النصي فيه.
بعد تسجيل نص Robo النصي في الجهاز ، احفظ الملف كملف JSON في الموقع المطلوب.
افتح صفحة Test Lab في وحدة تحكم Firebase وقم بتحميل ملف البرنامج النصي JSON و APK للتطبيق.
انقر فوق الزر "متابعة" . يُطلب منك تحديد الجهاز ومستوى واجهة برمجة التطبيقات. بعد اكتمال البرنامج النصي للاختبار ، يقوم Test Lab بإنشاء تقرير الاختبار.
(اختياري) لنسخ أو تنزيل سجل تقرير الاختبار والفيديو ، انقر فوق عرض ملفات المصدر .
بشكل افتراضي ، تمنع آليات متانة نص Robo النصي من الفشل مبكرًا. إذا اخترت وضع التنفيذ strict
وفشل نص Robo النصي في أي وقت ، فإن Test Lab يتخلى عن جميع الخطوات الإضافية في البرنامج النصي ويستأنف زحف Robo العادي. في أغلب الأحيان ، تفشل نصوص Robo النصية لأن Robo لا يمكنه العثور على العنصر المطلوب على الشاشة. لتجنب الفشل ، تأكد من أن التنقل في التطبيق الخاص بك يمكن التنبؤ به وأن شاشاتك معروضة بترتيب محدد.
قم بتشغيل نص Robo النصي في Test Lab
لتشغيل نص Robo النصي في Test Lab ، اتبع التعليمات التالية:
افتح صفحة Test Lab في وحدة تحكم Firebase.
قم بتحميل APK أو AAB للتطبيق في التطبيق APK أو حقل AAB .
قم بتحميل ملف Robo النصي المسجل أو الذي تم إنشاؤه يدويًا في حقل نص Robo النصي (اختياري) .
قم بتوفير نص Robo لعملية تشغيل تجريبية محلية لـ Robo
لتوفير نص Robo النصي لتشغيل اختبار Robo محلي ، استخدم خيار اختبار Robo التالي:
--robo-script-file <robo-script-path>
استبدل <robo-script-path>
بمسار إلى ملف نص Robo النصي في نظام الملفات المحلي. اتبع التعليمات الخاصة بإجراء اختبار Robo محليًا .
حدد نص Robo النصي في استدعاء اختبار gcloud CLI
لتحديد نص Robo النصي في استدعاء اختبار gcloud CLI ، استخدم علامة gcloud CLI التالية:
--robo-script = <robo-script-path>
استبدل <robo-script-path>
بمسار إلى ملف نص Robo النصي في نظام الملفات المحلي أو في التخزين السحابي باستخدام gs://
notation. على سبيل المثال:
gcloud firebase test android run --app = <path_to_app_apk_file> --robo-script = <robo-script-path>
الخطوات التالية
- لمعرفة المزيد حول بنية البرامج النصية لـ Robo وإمكانياتها واستخدامها وإجراءاتها ، راجع الدليل المرجعي لنصوص Robo النصية .
- قم بإجراء اختبار Robo .