این صفحه حاوی دستورالعملهایی برای استفاده از آزمایشهای چند دستگاهی CTS Verifier (CTS-V) برای Android 16 و بالاتر است.
تست های چند دستگاهی سمت میزبان را تنظیم کنید
این بخش نحوه تنظیم تست های چند دستگاهی را توضیح می دهد.
- اطمینان حاصل کنید که دستگاه دسکتاپ شما الزامات سیستم عامل برای CTS را برآورده می کند.
- مراحل 2 و 5 نصب نرم افزار دسکتاپ را دنبال کنید تا مطمئن شوید که adb، AAPT2 و Python به درستی روی دسکتاپ شما نصب شده اند.
دو دستگاه منطبق تحت آزمایش (DUTs) را آماده کنید، که هر کدام با CTS-V راه اندازی شده است.
اگر ماژول دیگری غیر از NFC را آزمایش میکنید، تستهای استاندارد دو دستگاه را تنظیم کنید .
- برای تستهای NFC، Set up tests NFC را دنبال کنید.
اگر در حال آزمایش ماژول CDM هستید، علاوه بر راهاندازی استاندارد دو دستگاه ، تستهای راهاندازی CDM را دنبال کنید.
تست های استاندارد دو دستگاه را تنظیم کنید
برای راه اندازی پیش فرض دو دستگاه:
- دو DUT Android منطبق را با فاصله تقریبی 20 سانتی متر از هم قرار دهید.
برای اطمینان از یک محیط تمیز، هر دو دستگاه را در یک جعبه محافظ قرار دهید.
(اختیاری) یک sniffer OTA برای اشکال زدایی Wi-Fi راه اندازی کنید.
تست های NFC را تنظیم کنید
تست های NFC از یک DUT و یک تراشه NFC PN532 استفاده می کنند.
برای تنظیم تست های NFC:
- یک تراشه NFC PN532 بخرید. ما All-In-One PN532 را توصیه می کنیم.
در DUT، به برنامه تنظیمات بروید.
NFC را فعال کنید.
قرار دادن تراشه NFC:
برای تلفنها، NFC خوان DUT را مطابق شکل 1 قرار دهید:
شکل 1. موقعیت یابی تراشه NFC.
برای سایر انواع دستگاه، تراشه را در کنار آنتن NFC دستگاه قرار دهید.
تراشه NFC PN532 را با استفاده از کابل USB به ایستگاه کاری آزمایشی خود وصل کنید.
تست های CDM را تنظیم کنید
مورد تست test_permissions_sync()
بسته به نوع ساخت دستگاههایی که آزمایش روی آنها اجرا میشود، رفتار متفاوتی دارد. بسیار مهم است که ساختهای قابل اشکالزدایی (userdbug یا eng) و غیراشکالزدایی (user) توسط OEMها آزمایش شوند و آزمایشها برای هر دو مورد آزمایش قرار گیرند.
معافیت
بند CDD برای اجرای API همگامسازی مجوزها فقط به آن نیاز دارد که بتواند با موفقیت دادهها را بین دستگاهها از طریق یک کانال امن منتقل کند. از آنجایی که اجرای کانال امن الزامی برای انطباق با CDD نیست، این آزمایش را میتوان در ساختهای غیرقابل اشکالزدایی (کاربر) نادیده گرفت، اما فقط در صورتی که بخواهید از پشتیبانی از ویژگی همگامسازی مجوزهای CDM انصراف دهید.
تستها باید بدون استثنا بر روی ساختهای قابل اشکالزدایی ارسال شوند.
پیش نیازهای آزمایش بر روی بیلدهای غیر قابل اشکال زدایی
اگر طبق بندهای معافیت قبلی معاف نیستید، از رعایت پیش نیازهای زیر اطمینان حاصل کنید.
کانال امن از AVF ( AttestationVerificationFramework
) برای تأیید قابلیت اطمینان سخت افزار استفاده می کند. گواهیهای تولید شده توسط هر دو طرف حاوی چندین اطلاعات در مورد خودشان است تا اطمینان حاصل شود که هیچ تغییر غیرمجاز در سیستم آنها وجود نداشته است. AVF حالت های زیر را در طول فرآیند تأیید بررسی می کند:
- دستگاه به اینترنت دسترسی دارد
- دستگاه از بوت تایید شده استفاده می کند و ساخت باید با کلید انتشار امضا شود، نه کلید توسعه
- دستگاه بوت لودر قفل شده است. برای دستورالعمل های دقیق، قفل کردن بوت لودر را ببینید
- سطوح سیستم عامل، راهاندازی کلید و وصله فروشنده کلیدی ظرف 12 ماه است. از سازه های قدیمی تر از یک سال استفاده نکنید
گواهی دستگاه توسط یکی از گواهی های ریشه تایید شده توسط فروشنده پشتیبانی می شود. گواهی های ریشه مورد اعتماد خود را در پوشش منبع
vendor_required_attestation_certificates.xml
مشخص کنید.
اجرای تست های چند دستگاهی سمت میزبان (AOSP 16 یا جدیدتر)
CTS Verifier 16 پشتیبانی از تست های چند دستگاهی سمت میزبان را معرفی می کند. این تستها را میتوان با استفاده از اسکریپتهای خودکار روی هاست، به جای آزمایش دستی روی دستگاه، اجرا کرد. پس از اتمام هر آزمون، نتایج به طور خودکار در DUT آپلود شده و در برنامه CTS Verifier نمایش داده می شود.
این بخش نحوه اجرای تست های چند دستگاهی سمت میزبان را توضیح می دهد.
تست های چند دستگاهی را اجرا کنید
برای اجرای تست چند دستگاهی:
در ایستگاه کاری آزمایشی خود، کنسول
cts-v-host
را از دایرکتوری که بسته فشرده CTS-V در آن از حالت فشرده خارج شده است، راه اندازی کنید:./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
از داخل برنامه CTS Verifier در DUT، روی تستهای سمت میزبان کلیک کنید. شکل 2 تست های سمت میزبان را در برنامه CTS Verifier نشان می دهد:
شکل 2. تست های چند دستگاهی سمت میزبان در برنامه CTS Verifier.
لیستی از ماژولهای تست چند دستگاهی سمت میزبان نمایش داده میشود.
نام ماژول تستی را که می خواهید اجرا کنید مشخص کنید. به عنوان مثال، ماژول CompanionDeviceManager به عنوان CtsCompanionDeviceManagerMultiDeviceTestCases فهرست شده است.
در کنسول cts-v-host، دستور زیر را اجرا کنید: توجه: اگر روی یک ماژول سمت میزبان در برنامه CTS Verifier ضربه بزنید، لیستی از موارد آزمایشی را مشاهده نخواهید کرد. در عوض، پس از اجرای ماژول در هاست، رابط کاربری بهطور خودکار با نتایج آزمایشی پر میشود.
در کنسول xTS دستور زیر را اجرا کنید:
run cts-v-host -m test_module_name
به عنوان مثال:
run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCases
پس از پایان اجرای آزمایشها توسط کنسول xTS، نتایج در برنامه CTS Verifier ظاهر میشوند. تست هایی که با علامت سبز مشخص شده اند، قبول شده اند. تست هایی که قرمز رنگ شده اند ناموفق بوده اند. شکل 3 نمونهای از نتایج آزمایشهای CtsCompanionDeviceManager را نشان میدهد:
شکل 3. نتایج تست چند دستگاه سمت میزبان در برنامه CTS Verifier.
عیب یابی تست های چند دستگاهی
این بخش راهنمایی عیب یابی برای مشکلات احتمالی را ارائه می دهد.
رفع عدم پاسخ برای GetFirmwareVersion در طول آزمایشات NFC
اگر هنگام اجرای آزمایشهای چند دستگاهی، پیغام verify_firmware_version RuntimeError: No response for GetFirmwareVersion
دریافت کردید.
برای رفع این مشکل، مسیر سریال استفاده شده توسط برد PN532 NFC در هاست خود را شناسایی کنید، مانند dev/ttyUSB1
، سپس به صورت دستی آن را با استفاده از آرگومان --module-arg
در کنسول مشخص کنید:
run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1
رفع پیام خطای ناموفق تراکنش در طول آزمایشات NFC
اگر پیام Transaction failed, check device logs for more information.
برای همه موارد تست NFC، این احتمال وجود دارد که تراشه NFC DUT نمی تواند PN532 را تشخیص دهد.
اگر چندین دستگاه به هاست متصل شدهاید و برخی از آنها PN532 در بالا قرار ندارند، ممکن است DUT اشتباهی انتخاب شده باشد. برای اطلاعات بیشتر، به تنظیم تستهای NFC مراجعه کنید.
برای رفع این مشکل یکی از موارد زیر را انجام دهید:
سریال DUT صحیح را در دستور تست سمت میزبان خود با استفاده از پرچم
-s
تنظیم کنید.همه دستگاه های غیر DUT را از میزبان جدا کنید.
مورد آزمایش CDM test_permissions_sync
نادیده گرفته شده است
اگر آزمایش روی دستگاههای غیرقابل رفع اشکال اجرا میشود، ببینید آیا معاف هستید یا خیر. در غیر این صورت، اطمینان حاصل کنید که هر دو دستگاه دارای پیش نیازها هستند.