تجزیه‌وتحلیل نتایج Firebase Test Lab

چندین روش برای استفاده از Firebase Test Lab برای اجرای آزمایش‌ها در برنامه Android شما وجود دارد، ازجمله واسط خط فرمان، استودیو Android، Test Lab واسط کاربر در Firebase کنسول، و میانای برنامه‌سازی کاربردی آزمایش. به‌هر روشی که آزمایش‌هایتان را شروع کنید، نتایج در پروژه Firebase که مشخص می‌کنید ذخیره می‌شود. علاوه‌بر ابزارهای بالا، می‌توانید نتایج را بااستفاده از ToolResults API کاوش کنید. این صفحه نحوه مرور و تجزیه‌وتحلیل این نتایج آزمایش را شرح می‌دهد.

مفاهیم کلیدی

در کنسول Firebase، با رفتن به DevOps و تعامل > آزمایشگاه تست می‌توانید نتایج همه اجراهای تست قبلی‌تان را ببینید. این صفحه همه نتایج دقیق اجرای آزمایشی برنامه‌هایی را که با پروژه خودتان بااستفاده از Test Lab آزمایش کرده‌اید نمایش می‌دهد.

برای بررسی نتایج آزمایش، ابتدا باید سه مفهوم را درک کنید:

وقتی آزمایشی یا مجموعه‌ای از موارد آزمایشی را دربرابر دستگاه‌ها و پیکربندی‌هایی که انتخاب کرده‌اید اجرا می‌کنید، Test Lab آزمایش را به‌صورت دسته‌ای دربرابر برنامه‌تان اجرا می‌کند، سپس نتایج را به‌صورت ماتریس آزمایش نمایش می‌دهد.

دستگاه‌ها × اجرای آزمایش = ماتریس آزمایش

دستگاه
دستگاه فیزیکی یا مجازی (فقط Android) که در آن آزمایش اجرا می‌کنید، مثل تلفن، رایانه لوحی، یا دستگاه پوشیدنی. دستگاه‌های موجود در ماتریس آزمایش با مدل دستگاه، نسخه سیستم‌عامل، جهت صفحه، و محل (که با نام تنظیمات زبان و جغرافیا نیز شناخته می‌شود) شناسایی می‌شوند.
آزمایش، اجرای آزمایش
آزمایشی (یا مجموعه‌ای از چارچوب‌های تست) که باید در دستگاه اجرا شود. می‌توانید یک آزمایش برای هر دستگاه اجرا کنید، یا به‌صورت اختیاری آزمایش را تکه‌تکه کنید و موارد آزمایشی آن را در دستگاه‌های مختلف اجرا کنید.
ماتریس آزمایش
شامل وضعیت‌ها و نتایج آزمایش برای اجرای آزمایش‌های شما است. اگر هریک از اجراهای آزمایشی در ماتریس ناموفق باشد، کل ماتریس ناموفق خواهد بود.

بخش‌های زیر نحوه پیمایش نتایج آزمایش را توضیح می‌دهد.

تفسیر نتایج سابقه آزمایش

وقتی با انتخاب Test Lab به نتایج آزمایش خود پیمایش می‌کنید، نتایج آزمایش‌هایی را که تاکنون اجرا کرده‌اید می‌بینید.

سابقه آزمایش براساس برنامه گروه‌بندی می‌شود. فقط پنج ماتریس آزمایشی اخیر برای هر برنامه نشان داده می‌شود؛ اگر ماتریس‌های بیشتری دردسترس باشد، می‌توانید روی پیوند همه ماتریس‌ها در پایین فهرست آزمایش برنامه کلیک کنید تا فهرست کامل آن برنامه را ببینید.

تفسیر نتایج ماتریس آزمایش

وقتی آزمایشی را ازطریق واسط کاربر Test Lab شروع می‌کنید، به صفحه‌ای هدایت می‌شوید که در آن می‌توانید ماتریس آزمایشتان را ببینید و روی اجرای آزمایشی خاصی کلیک کنید تا نتایج آزمایش را مشاهده کنید. استودیو Android و فرمان gcloud نشانی وب صفحه نتایج ماتریس آزمایش را نیز ارائه می‌دهند.

در ماتریس آزمایشی معمولی، ممکن است آزمایشی را در حدود دوازده دستگاه مختلف اجرا کنید. هر اجرای آزمایش می‌تواند نتیجه متفاوتی داشته باشد. نتایج احتمالی برای هر اجرای آزمایشی در ماتریس آزمایشی شامل موارد زیر است:

  • گذشت آزمایش موفق بود: هیچ خطایی رخ نداد.
  • ‫آزمایش ناموفق بود ناموفق بود: حداقل یک مورد ناموفق برخورد شد.
  • نتیجه قطعی نیست آزمایش موفق بود: نتایج آزمایش قطعی نبود، احتمالاً به‌دلیل خطای Test Lab.
  • ‫آزمایش موفق بود رد شد: مقادیر بُعد انتخاب‌شده برای برخی‌از اجراهای آزمایشی در ماتریس ناسازگار بود. این وضعیت زمانی رخ می‌دهد که دستگاه‌هایی که انتخاب کرده‌اید با یک یا چند سطح «میانای برنامه‌سازی کاربردی Android» که انتخاب کرده‌اید سازگار نباشد.

برای مرور نتایج آزمایش تجمیعی برای همه ماتریس‌های آزمایش برای یک برنامه معین در پروژه Firebase، روی نام برنامه کلیک کنید، همان‌طور که در مثال زیر نشان داده شده است:

صفحه نتایج ماتریس آزمایش نمونه با فقط چهار اجرای آزمایش نتایج ماتریس آزمایش

این کار شما را به فهرست ماتریس آزمایش برای برنامه‌تان می‌برد، جایی که می‌توانید روی نام هر ماتریس آزمایشی کلیک کنید تا نتایج ماتریس آزمایش را ببینید، و جایی که می‌توانید روی نام برنامه (که در چارگوش قرمز زیر نشان داده شده است) کلیک کنید تا فهرست ماتریس آزمایش را برای سایر برنامه‌های مرتبط با پروژه Firebase خود مشاهده کنید.

صفحه فهرست ماتریس آزمایش نمونه فهرست ماتریس آزمایش

ماتریس آزمایش می‌تواند قبول، رد، یا نامشخص باشد. اگر هریک از اجراهای آزمایش در آن ماتریس ناموفق باشد یا نتیجه آن نامشخص باشد، ماتریس آزمایش به‌عنوان ناموفق یا نامشخص نشان داده می‌شود.

تفسیر نتایج آزمایش Robo

اگر آزمایش‌هایتان را با Robo اجرا کرده باشید، نتایج شما علاوه‌بر سنجه‌های معمول آزمایش، شامل ویدیوها و نماگرفت‌هایی از خزیدن Robo در واسط کاربر شما می‌شود. آن ویدیو و نماگرفت‌ها شامل نشانه‌های دیداری از کنش‌هایی است که Robo درطول خزیدن انجام داده است، مشابه ویژگی «نمایش لمس‌ها» در Android. می‌توانید از نشانگرها برای کمک به دنبال کردن پیشرفت Robo و بازتولید هرگونه اشکالی که ممکن است کشف کند استفاده کنید.

مثال ویدیو نتایج آزمون روبو

نتایج آزمایش روبو

تفسیر نتایج از اجرای یک آزمایش

از صفحه نتایج ماتریس آزمایش، روی یکی از اجراهای آزمایش کلیک کنید تا نتیجه آن اجرای آزمایش خاص را ببینید.

صفحه نتایج اجرای آزمایشی نمونه نتایج اجرای آزمایش

در این صفحه، می‌توانید زمان لازم برای اجرای هر آزمایش را ببینید. همچنین می‌توانید نتایج موارد آزمایشی خاصی را که با روش‌های موجود در «فایل APK آزمایشی» شما (برای آزمایش‌های ابزار دقیق) مطابقت دارد و نتایج دقیق آزمایش، ازجمله گزارش‌های آزمایش، نماگرفت‌ها، و ویدیوها را ببینید. برای آزمایش Robo، نتایج آزمایش دقیق همچنین شامل نقشه فعالیت است که مسیرهای واسط کاربر را که توسط آزمایش Robo بازدید شده است به‌صورت گرافیکی نشان می‌دهد.

نتایج آزمایش ابزارگری تقسیم‌شده

برای کمک به شما در تفسیر نتایج آزمایش ابزاری، Test Lab هر آزمایش را در صفحه گزارش دقیق خود جدا می‌کند و آن را با ردیابی پشته، گزارش‌ها، و ویدیوها تکمیل می‌کند. این ویژگی چه از Android Orchestrator استفاده کنید چه نکنید کار می‌کند.

صفحه نتایج مورد آزمون نمونه نتایج مورد آزمایشی

تفسیر نتایج دسترس‌پذیری

آزمایش‌های روبو از «اسکنر دسترس‌پذیری Android» برای شناسایی مشکلات دسترس‌پذیری در برنامه‌تان استفاده می‌کنند (توجه داشته باشید که می‌توانید اسکن را به‌صورت محلی در دستگاهتان نیز اجرا کنید). برای دریافت دستورالعمل‌های مربوط به نحوه بررسی و تفسیر نتایج دسترس‌پذیری «آزمایش روبو»، به شروع کار با «اسکنر دسترس‌پذیری» مراجعه کنید.

برای کسب اطلاعات کلی درباره نحوه بهبود دسترس‌پذیری برنامه‌تان، به اسناد دسترس‌پذیری توسعه‌دهنده Android مراجعه کنید.

سنجه‌های عملکرد

آزمایش‌هایی که روی دستگاه‌های فیزیکی اجرا می‌شوند، سنجه‌های عملکرد را نیز برمی‌گردانند:

سنجهپیکربندی دستگاه الزامی است
زمان راه‌اندازی برنامهمیانای برنامه‌سازی کاربردی ۱۹ به‌بالا
استفاده از واحد پردازش مرکزی‫API 21+‎
استفاده از حافظه
فعالیت شبکه
فریم در ثانیهمیانای برنامه‌سازی کاربردی ۲۱ و بالاتر و شامل SurfaceView

نتایج دقیق آزمایش

نتایج دقیق آزمایش تا ۹۰ روز پس‌از اجرای آزمایش دردسترس است و در Google Cloud Storage مخزن ذخیره می‌شود (اما در کنسول Firebase نیز قابل‌مشاهده است). وقتی روی نتایج آزمایش در صفحه نتایج اجرای آزمایش کلیک کنید، می‌توانید نتایج دقیق آزمایش را در Cloud Storage باکت ببینید. وقتی نتایج دقیق آزمایش دیگر دردسترس نباشد، همچنان می‌توانید ببینید کدام آزمایش‌ها موفق یا ناموفق بوده‌اند.

اگر می‌خواهید نتایج دقیق آزمایش را برای مدتی بیشتر از ۹۰ روز نگه دارید، می‌توانید این نتایج آزمایش را بااستفاده از گزینه خط فرمان --results-bucket gcloud به سطل Cloud Storage متعلق به خودتان ارسال کنید. سپس می‌توانید تنظیم سن را برای تعیین مدت زمان ذخیره نتایج در باکت Cloud Storage تنظیم کنید. برای کسب اطلاعات درباره نحوه تغییر تنظیم سن، به شرایط چرخه عمر مراجعه کنید.

هنگام اجرای آزمایش، اگر خطای does not have storage.objects.create access to the Google Cloud Storage object. Permission 'storage.objects.create' denied on resource (or it may not exist).. را دریافت کردید، ممکن است اصلی که آزمایش را اجرا می‌کند مجوز صحیح را در پروژه نداشته باشد. به‌طور پیش‌فرض، Firebase مخزنی برای شما در Google Cloud Storage ایجاد می‌کند، اما این کار مستلزم آن است که اصلی که آزمایش را اجرا می‌کند دارای «نقش/ویرایشگر» باشد که نقشی سهل‌گیرانه است. اگر نمی‌توانید آن نقش را به عامل اعطا کنید، می‌توانید از گزینه خط فرمان --results-bucket gcloud استفاده کنید.