اجرای «متن Robo» (‏iOS+)

این سند نحوه استفاده از دستورگان Robo را توضیح می‌دهد. این دستورگان آزمایش‌هایی هستند که تکالیف تضمین کیفیت دستی را برای برنامه‌های تلفن همراه خودکارسازی می‌کنند و استراتژی‌های آزمایش پیش‌از راه‌اندازی و یکپارچه‌سازی مداوم (CI) را فعال می‌کنند. برای مثال، می‌توانید از دستورگان‌های Robo برای آزمایش مسیر کاربر رایج یا ارائه ورودی واسط کاربر (UI) خاص، مثل نام کاربری و گذرواژه، استفاده کنید. متن‌های روبو یکی از ویژگی‌های Robo test است.

دستورگان Robo از آزمون Robo به‌عنوان موتور آزمون استفاده می‌کنند. در ساده‌ترین شکل، یک دستورگان Robo از دنباله‌ای از کنش‌های رابط کاربری مانند وارد کردن نوشتار «نام کاربری» و سپس ضربه زدن روی دکمه «تأیید» تشکیل شده است. دستورگان Robo همچنین می‌تواند شامل کنش‌هایی مثل انتظار برای ظاهر شدن عنصر، ضربه زدن در نقطه خاصی از عنصر، و اجرای دستورات شل «پل اشکال‌زدایی Android»‏ (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 جایگزین همه انواع آزمایش‌ها نمی‌شوند. همچنان به آزمایش‌های واحد نیاز دارید تا اشکالات منطقی سطح پایین را در برنامه‌تان پیدا کنید؛ این آزمایش‌ها معمولاً به محیط Android یا iOS نیاز ندارند. توصیه می‌کنیم آزمایش‌های «نوشتار Robo» را با آزمایش‌های ابزار دقیق هدفمند که می‌توانند ادعاهای خاص و دقیقی درباره منطق کسب‌وکار داشته باشند تکمیل کنید. این ادعاها بهتر است در کد بیان شوند.

مراحل بعدی