تأیید کننده مجموعه تست سازگاری Android (CTS Verifier) مکمل مجموعه تست سازگاری (CTS) است. در حالی که CTS APIها و عملکردهایی را که میتوانند خودکار شوند، بررسی میکند، CTS Verifier آزمایشهایی را برای APIها و عملکردهایی ارائه میکند که بدون ورودی یا موقعیتیابی دستی نمیتوانند روی یک دستگاه ثابت آزمایش شوند، مانند کیفیت صدا، صفحه لمسی، شتابسنج و دوربین.
الزامات
قبل از اجرای CTS Verifier، مطمئن شوید که تجهیزات زیر را دارید:
- دستگاه Android که سازگاری Android API را با گذراندن موفقیت آمیز CTS تأیید کرده است. این دستگاه تحت آزمایش (DUT) است.
- کامپیوتر لینوکس با پورت سازگار با USB 2.0. تمام اتصالات به DUT از طریق این پورت انجام می شود.
- دومین دستگاه Android با بلوتوث سازگار شناخته شده، Wi-Fi Direct، Wi-Fi Aware، UWB (اگر DUT از UWB پشتیبانی می کند) و شبیه سازی کارت میزبان NFC (HCE).
- یک روتر Wi-Fi با نام نقطه دسترسی و رمز عبور پیکربندی شده است. روتر باید قابلیت قطع اتصال از اینترنت را داشته باشد، اما خاموش نباشد.
اطمینان حاصل کنید که سه پایهها، نگهدارندههای دستگاه و فواصل از پیش اندازهگیریشده مورد نیاز برای آزمایشهای اندازهگیری فاصله (مجاورت) برای UWB، Wi-Fi NAN و بلوتوث RSSI را نیز آماده کردهاید. برای جزئیات، به کالیبراسیون حضور مراجعه کنید.
الزامات UICC برای تست های NFC
CTS Verifier موارد تست NFC زیر را دارد:
- فیلد خاموش (از داده های تراکنش از 0x54 استفاده می کند)
- لغو انتخاب (از داده های تراکنش از 0x52 استفاده می کند)
- دستور HCI (0025000000) (از داده های تراکنش از 0x02 استفاده می کند)
آزمایش رویداد تراکنش به دو دستگاه نیاز دارد که یکی از آنها باید SecureElement UICC با قوانین دسترسی زیر داشته باشد:
- هش APK CtsVerifier: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
- شناسه برنامه مجاز (AID) برای دسترسی به رویداد NFC: 0xA000000476416E64726F696443545341
در سمت شبیه ساز، ما انتظار داریم که رویداد تراکنش فعالیت مربوطه را در پیش زمینه قرار دهد.
راه اندازی
حالت ناوبری سیستم دستگاه تست را به صورت زیر به حالت سه دکمه ای تغییر دهید:
- تنظیمات را باز کنید.
- به System > Gesture > System Navigation بروید.
- هر حالت پیمایش مبتنی بر دکمه را انتخاب کنید، در صورت موجود بودن حالت سه دکمه ترجیح داده می شود.
برای راه اندازی محیط تست CTS Verifier:
در رایانه لینوکس:
دستور زیر را قبل از نصب CTS Verifier اجرا کنید تا به رابط های غیر SDK دسترسی داشته باشید.
adb shell settings put global hidden_api_policy 1
اندروید استودیو را نصب کنید.
برای آزمایش ، CTS Verifier APK را برای نسخه اندروید دانلود کنید.
DUT را به کامپیوتر لینوکس وصل کنید.
از یک ترمینال در رایانه لینوکس،
CtsVerifier.apk
را روی DUT نصب کنید.adb install -r -g CtsVerifier.apk
برای اندروید 10 و بالاتر، دستور زیر را اجرا کنید تا به برنامه اجازه ایجاد گزارش بدهید.
adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
برای اندروید 11 و بالاتر، دستور زیر را اجرا کنید تا اجازه دهید گزارشها در فهرستی که خود تعریف میشود، زیر فهرست راهنمای سطح بالای خارجی دستگاه ذخیره شود.
adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
برای اندروید 13 و بالاتر، دستور زیر را اجرا کنید تا امکان دسترسی آزمایشی API برای CTS Verifier را فراهم کنید.
adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
برای اندروید 14 و بالاتر، دستور زیر را اجرا کنید تا به برنامه اجازه دهید صفحه نمایش را روشن کند.
adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0
مطمئن شوید که DUT تاریخ و زمان سیستم را به درستی تنظیم کرده است.
CTS Verifier را اجرا کنید
برنامه CTS Verifier را با ضربه زدن روی نماد CTS Verifier در DUT راه اندازی کنید.
شکل 1. نماد تأیید کننده CTS
این برنامه چندین مجموعه آزمایشی در دسترس را برای تأیید دستی نمایش می دهد.
شکل 2. منوی آزمایشات تأییدکننده CTS
هر تست شامل مجموعه ای از عناصر مشترک در پایین صفحه است.
شکل 3. صفحه آزمایشی با عناصر تست رایج برجسته شده است
- پاس (✓). اگر DUT مطابق با دستورالعملهای اطلاعات، الزامات آزمون را برآورده میکند، ضربه بزنید.
- اطلاعات (؟). برای نمایش دستورالعمل های تست ضربه بزنید. همچنین اولین باری که یک تست باز می شود به طور خودکار ظاهر می شود.
- شکست (!). اگر DUT طبق دستورالعمل اطلاعات مطابق با الزامات تست نیست، ضربه بزنید.
برخی از تستها، مانند حالت لوازم جانبی USB و تست کالیبراسیون دوربین، به تنظیمات و دستورالعملهای تست اضافی نیاز دارند که در بخشهای زیر توضیح داده شده است.
حالت لوازم جانبی USB را برای نسخه 8.0 و بالاتر تست کنید
شکل 4. روش تست لوازم جانبی USB برای 8.0 و بالاتر
شکل 5. تست حالت لوازم جانبی USB برای نسخه 8.0 و بالاتر
حالت لوازم جانبی USB را برای 7.x و کمتر تست کنید
تست لوازم جانبی USB به یک رایانه لینوکس برای اجرای برنامه دستگاه رومیزی USB (میزبان) نیاز دارد.
- DUT را به کامپیوتر لینوکس وصل کنید.
در رایانه، برنامه
cts-usb-accessory
را از بسته CTS Verifier اجرا کنید:./cts-usb-accessory
صبر کنید تا یک پیام بازشو روی DUT ظاهر شود، سپس OK را انتخاب کنید.
شکل 6. تست لوازم جانبی USB
به تست لوازم جانبی USB در برنامه CTS Verifier در DUT بروید.
در رایانه، خروجی کنسول را بررسی کنید. خروجی نمونه:
CTS USB Accessory Tester Found possible Android device (413c:2106) - attempting to switch to accessory mode... Failed to read protocol versionfigure3 Found Android device in accessory mode (18d1:2d01)... [RECV] Message from Android device #0 [SENT] Message from Android accessory #0 [RECV] Message from Android device #1 [SENT] Message from Android accessory #1 [RECV] Message from Android device #2 [SENT] Message from Android accessory #2 [RECV] Message from Android device #3 [SENT] Message from Android accessory #3 [RECV] Message from Android device #4 [SENT] Message from Android accessory #4 [RECV] Message from Android device #5 [SENT] Message from Android accessory #5 [RECV] Message from Android device #6 [SENT] Message from Android accessory #6 [RECV] Message from Android device #7 [SENT] Message from Android accessory #7 [RECV] Message from Android device #8 [SENT] Message from Android accessory #8 [RECV] Message from Android device #9 [SENT] Message from Android accessory #9 [RECV] Message from Android device #10 [SENT] Message from Android accessory #10
کالیبره کردن میدان دید دوربین
از روش کالیبراسیون میدان دید برای تعیین سریع میدان دید دستگاه با دقت متوسط استفاده کنید.
محیط تست را تنظیم کنید:
- فایل calibration-pattern.pdf هدف را روی کاغذ 11 x 17 اینچی یا A3 چاپ کنید.
- الگوی چاپ شده را روی یک پشتی سفت نصب کنید.
دستگاه دوربین و هدف چاپ شده را همانطور که در نمودار زیر نشان داده شده است جهت دهید.
شکل 7. هدف چاپ شده با دوربین
عرض هدف را تنظیم کنید:
- فاصله (بر حسب سانتی متر) بین خطوط ثابت روی الگوی مورد نظر را اندازه گیری کنید تا عدم دقت چاپ را در نظر بگیرید (~38 سانتی متر).
- برنامه کالیبراسیون را شروع کنید.
- دکمه تنظیم را فشار دهید و فاصله نشانگر را انتخاب کنید.
- فاصله تا الگوی هدف (~100 سانتی متر) را اندازه بگیرید و وارد کنید.
- دکمه برگشت را فشار دهید تا به پیش نمایش کالیبراسیون بازگردید.
بررسی کنید که دستگاه و هدف همانطور که در شکل نشان داده شده است قرار گرفته باشند و فواصل صحیح در کادر گفتگو وارد شده باشد. پیش نمایش تصویر را با یک خط عمودی روی آن نشان می دهد. این خط باید با خط مرکزی الگوی هدف هماهنگ باشد. شبکه شفاف را می توان با سایر خطوط عمودی استفاده کرد تا اطمینان حاصل شود که محور نوری متعامد به هدف است.
تست کالیبراسیون را اجرا کنید:
- وضوح تصویر را انتخاب کنید (با استفاده از انتخابگر در پایین سمت چپ)، سپس برای گرفتن عکس روی صفحه ضربه بزنید. تست وارد حالت کالیبراسیون می شود و عکس را با دو خط عمودی روی تصویر نمایش می دهد.
- تعیین دقت:
- اگر خطوط با خطوط عمودی روی الگوی هدف در عرض چند سانتی متر همسو شوند، میدان دید گزارش شده برای وضوح انتخاب شده دقیق است.
- اگر خطوط مطابقت نداشته باشند، میدان دید گزارش شده دقیق نیست. برای تصحیح این موضوع، نوار لغزنده را در پایین صفحه تنظیم کنید تا جایی که روکش تا حد امکان با الگوی هدف هماهنگ شود. هنگامی که همپوشانی و تصویر الگوی هدف تراز هستند، میدان دید نمایش داده شده تقریبی نزدیک به مقدار صحیح است. میدان دید گزارش شده باید در محدوده +/-2 درجه از مقدار کالیبراسیون باشد.
- دکمه برگشت را فشار دهید و تست کالیبراسیون را برای تمام وضوح تصویر پشتیبانی شده توسط DUT تکرار کنید.
CTS Verifier را برای حالت های جایگزین اجرا کنید
با شروع نسخههای CTS 10 R6 و CTS 11 R2، CTS Verifier از آزمایشهای مورد نیاز برای دستگاههای دارای حالتهای جایگزین یا برای دستگاههایی با بیش از یک حالت صفحه پشتیبانی میکند.
در بالای نمای فهرست اصلی در CTS Verifier، دکمهای نشان داده میشود که به کاربران امکان میدهد بین حالت نمایش بازشده و تاشده جابجا شوند. CTS Verifier تست های لازم را برای حالت نمایش انتخاب شده نشان می دهد. برای اجرای حالت های جایگزین در CTS Verifier، باید دکمه را به حالت نمایش مناسب تغییر دهید و لیست آزمایش های نشان داده شده را اجرا کنید.
نتایج تست های تا شده در همان گزارش با تست های باز شده ثبت می شود. برای شناسایی هر نتیجه آزمایشی که مجموعه تست از آن است، یک پسوند به نام آزمون در حالت تا شده اضافه می شود.
<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
<RunHistory subtest="CREATE_ALARM[folded]">
<Run start="1594176663973" end="1594176665841" isAutomated="false" />
</RunHistory>
</Test>
نتایج صادرات
پس از اتمام تمام تستها، میتوانید نتایج را بهعنوان گزارش ذخیره کرده و در رایانه دانلود کنید. نام گزارش ها به طور خودکار بر اساس زمان سیستم DUT مهر زمانی زده می شود.
برای ذخیره نتایج تست خود، روی نماد ذخیره (دیسک) در بالای لیست دسته بندی های تست ضربه بزنید.
منتظر یک پیام بازشو باشید که مسیر فایل را به گزارش ذخیره شده نشان دهد (به عنوان مثال
/sdcard/verifierReports/ctsVerifierReport-date-time.zip
)، سپس مسیر را ضبط کنید.DUT را به کامپیوتر لینوکس وصل کنید.
از نصب Android SDK در رایانه لینوکس، گزارشها را از دستگاه متصل با استفاده از
adb shell content read
یاadb pull CTSVerifierReportPath
دانلود کنید.برای اندروید 7.x و بالاتر، همه گزارشها را با استفاده از دستور زیر دانلود کنید:
adb pull /sdcard/verifierReports
برای اندروید 6.0 و پایین تر، همه گزارش ها را با استفاده از دستور زیر دانلود کنید:
adb pull /mnt/sdcard/ctsVerifierReports/
برای Android 10 و بالاتر، پیادهسازی Automotive و دستگاههایی که بهعنوان کاربر ثانویه اجرا میشوند، آخرین گزارش را با استفاده از دستور زیر دانلود کنید:
adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zip
برای فهرست کردن همه گزارشهای موجود در دستگاه متصل:
adb shell content query --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports
برای دانلود یک گزارش از لیست، می توانید شناسه ردیف یا نام فایل را مشخص کنید. به عنوان مثال:
adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/ctsVerifierReport-date-time.zip > report.zip
برای پاک کردن نتایج قبولی/شکست، نتایج را در برنامه CTS Verifier انتخاب کنید و منو > پاک کردن را انتخاب کنید.