این سند AVD ها را برای Test Lab ، از جمله مزایا و محدودیت های شناخته شده توصیف می کند. ما همچنین توصیه هایی در مورد نحوه آزمایش برنامه خود در طول چرخه عمر توسعه ارائه می دهیم. AVD های Test Lab مشابه AVD های اندروید استودیو هستند اما برای عملکرد با آزمایش ابری بهینه شده اند، بنابراین تفاوت های کمی بین این دو وجود دارد.
AVD های Test Lab با پسوند .arm یا (Arm) شبیه سازهای پیشرفته ای هستند که مزایای زیر را ارائه می دهند:
زمان اجرای تست سریعتر
اندازهها و تراکم صفحهنمایش با AVDهای اندروید استودیو برای سازگاری هماهنگ شده است
GPU از گرافیک تسریع شده پشتیبانی می کند
جدول زیر مزایای استفاده از دستگاه های مجازی را شرح می دهد:
بهره مند شوند | توضیحات | مورد(های) استفاده |
در دسترس بودن بالا | هنگام آزمایش با دستگاه های مجازی می توانید آزمایش ها را اجرا کنید و نتایج آزمایش را سریعتر دریافت کنید. از آنجایی که دستگاههای مجازی بر اساس تقاضا ایجاد میشوند، آزمایشهای شما تقریباً بلافاصله شروع میشوند و اعتبارسنجی سریع برنامه شما را فراهم میکنند. | آزمایش بهروزرسانیهای کوچک برنامه یا آزمایش رگرسیون. |
مدت زمان تست طولانی تر | دستگاه های مجازی از مدت زمان تست حداکثر 60 دقیقه پشتیبانی می کنند. مدت زمان تست بر روی دستگاه های فیزیکی 45 دقیقه در هر دستگاه محدود می شود. | انجام تست های طولانی تر |
هزینه های کمتر | قیمت دستگاه های مجازی برای هر دستگاه مجازی که برای آزمایش برنامه شما استفاده می شود، 1 دلار در ساعت است. | تست روزانه با استفاده از سیستم های یکپارچه سازی مداوم یا قبل از بررسی کد. برای کسب اطلاعات بیشتر، سطوح استفاده، سهمیهها و قیمتگذاری برای Test Lab را ببینید. |
برنامه خود را با دستگاه های مجازی تست کنید
می توانید برنامه خود را با دستگاه های مجازی به همان روشی که با دستگاه های فیزیکی آزمایش می کنید، آزمایش کنید. وقتی یک ماتریس آزمایشی را پیکربندی میکنید، میتوانید دستگاههای مجازی را برای آزمایشهای خود انتخاب کنید. برای کسب اطلاعات بیشتر در مورد اجرای تستها با Test Lab ، به شروع آزمایش برای Android با Firebase Test Lab مراجعه کنید.
مدل ها و API های پشتیبانی شده را مشاهده کنید
برای مشاهده مدل های AVD و API های پشتیبانی شده توسط Test Lab ، دستور زیر را اجرا کنید:
gcloud firebase test android models list --filter=virtual
بهترین روش ها برای آزمایش برنامه شما
وقتی برنامه خود را با Test Lab آزمایش میکنید، دستگاههای مجازی دامنه گزینههای شما را افزایش میدهند. توصیه می کنیم از بهترین شیوه های زیر برای آزمایش برنامه خود در طول چرخه عمر توسعه برنامه استفاده کنید:
از شبیه ساز Android Studio یا یک دستگاه فیزیکی متصل استفاده کنید
هنگام توسعه برنامه خود، از شبیه ساز Android Studio یا یک دستگاه فیزیکی متصل استفاده کنید تا هر ساختنی را برای تأیید اعتبار اولیه بررسی کنید. اگر تستهای ابزار دقیق دارید، میتوانید این تستها را از Android Studio بر روی دستگاههای فیزیکی یا مجازی ارائهشده توسط Test Lab نیز اجرا کنید.
هنگام کار بر روی پروژه های مشترک از سیستم های CI برای هر تغییر کد استفاده کنید
اگر روی یک پروژه بزرگ کار می کنید یا در پروژه هایی مشارکت می کنید که با استفاده از GitHub یا یک سایت مشابه به اشتراک گذاشته می شوند، توصیه می کنیم از سیستم های یکپارچه سازی پیوسته (CI) استفاده کنید. هر بار که سیستم CI اجرا می شود یا قبل از هر درخواست کشش، برنامه های خود را روی دستگاه های مجازی آزمایش کنید. برای کسب اطلاعات بیشتر در مورد استفاده از Test Lab با سیستمهای CI، به استفاده از Test Lab برای Android با سیستمهای ادغام مداوم مراجعه کنید.
قبل از اینکه بهروزرسانیهای مهم برنامه را منتشر کنید، برنامه خود را روی دستگاههای فیزیکی با Test Lab آزمایش کنید
قبل از انتشار بهروزرسانیهای برنامه با تغییرات قابل توجه در رابط کاربری و عملکرد، توصیه میکنیم از Test Lab برای آزمایش برنامه خود در دستگاههای فیزیکی استفاده کنید. این کمک می کند تا اطمینان حاصل شود که برنامه شما در طیف گسترده ای از دستگاه های فیزیکی محبوب پایدار و کارآمد است. آزمایش بر روی دستگاه های فیزیکی همچنین پوشش آزمایشی را برای هر عملکرد برنامه ای که به ویژگی های دستگاه فیزیکی که توسط دستگاه های مجازی شبیه سازی نشده است متکی است، تضمین می کند. برای کسب اطلاعات بیشتر درباره این ویژگیها، محدودیتهای شناخته شده را ببینید.
به روز رسانی دستگاه مجازی
تیم اندروید به صورت دورهای تصاویر دستگاه مجازی جدید را اضافه میکند، تصاویر قدیمی را منسوخ میکند و تصاویر موجود را بهروزرسانی میکند. ما این بهروزرسانیها را روی تصاویر دستگاه مجازی خود اعمال میکنیم تا اطمینان حاصل کنیم که در حال آزمایش با نسخههای Android بهروز هستید که تجربیات کاربران شما را منعکس میکند.
در موارد نادر، این بهروزرسانیها ممکن است باعث شکست غیرمنتظره آزمایشها شوند. وقتی یک بهروزرسانی بالقوه خراب وجود دارد، Test Lab اطلاعاتی را در یادداشتهای انتشار درج میکند. بهعنوان بهترین روش، توصیه میکنیم از چارچوبهای آزمایشی - به عنوان مثال، اسپرسو - استفاده کنید که در صورت امکان در برابر این تغییرات مقاوم هستند. زمانی که این امکان وجود ندارد، توصیه میکنیم دستگاههای مجازی Arm را هدف قرار دهید، که میتوانید انتظار داشته باشید کمتر بهروزرسانی شوند.
محدودیت های شناخته شده
برخی از ویژگیهای دستگاه فیزیکی در حال حاضر توسط دستگاههای مجازی شبیهسازی نشدهاند یا با برخی محدودیتها شبیهسازی شدهاند. جدول زیر ویژگی هایی را خلاصه می کند که در حال حاضر در دستگاه های مجازی در دسترس نیستند یا با محدودیت های خاصی در دسترس هستند:
ویژگی | جزئیات |
رابط های باینری برنامه (ABI) | همه دستگاه ها از همه ABI ها پشتیبانی نمی کنند. اگر با Android NDK توسعه میدهید، حتماً کدهایی را برای ABIهای پشتیبانی شده توسط دستگاههای مورد نظرتان تولید کنید ( دستگاههای موجود در Test Lab را ببینید). برای کسب اطلاعات بیشتر درباره مدیریت ABI، به Android ABI مراجعه کنید. توجه: اگر آزمایشی در ماتریس آزمایشی شما بهعنوان نامعتبر علامتگذاری شود، ممکن است این اتفاق بیفتد زیرا برنامه شما به کد بومی وابسته است که توسط ABI دستگاه پشتیبانی نمیشود. |
عملکرد گرافیکی | دستگاههای مجازی Nexus و Pixel از رندر گرافیکی نرمافزاری استفاده میکنند. برنامه های کاربردی گرافیکی فشرده می توانند عملکرد کمتری را تجربه کنند. اگر برنامه شما دارای گرافیک فشرده است، به جای آن از SmallPhone.arm، MediumPhone.arm یا دستگاه های فیزیکی استفاده کنید. |
API های گرافیکی | OpenGL ES 3.x در دستگاههای زیر سطح API 29 پشتیبانی نمیشود. دستگاههای جدیدتر 100% با OpenGL/Vulkan API سازگار نیستند، ممکن است تفاوتهای کوچکی در گرافیک مشاهده کنید. |
برنامه فروشگاه Google Play | برنامه فروشگاه Google Play در دستگاههای مجازی Arm پشتیبانی نمیشود. |
قابلیت واقعیت افزوده (AR). | آزمایش عملکرد واقعیت افزوده (AR) در دستگاههای مجازی پشتیبانی نمیشود. |
سطوح API قدیمی تر | دستگاههای مجازی Test Lab Arm از سطوح API کمتر از 26 پشتیبانی نمیکنند. |