مجموعه تست سازگاری (CTS) یک مجموعه آزمایشی رایگان و تجاری است که برای دانلود به صورت باینری یا به عنوان منبع در پروژه منبع باز Android (AOSP) در دسترس است. CTS نشان دهنده "مکانیسم" سازگاری است.
CTS بر روی یک ماشین رومیزی اجرا می شود و موارد تست را مستقیماً روی دستگاه های متصل یا شبیه ساز اجرا می کند. CTS مجموعهای از تستهای واحد است که برای ادغام در جریان کار روزانه (مانند از طریق یک سیستم ساخت مداوم) مهندسین که یک دستگاه را میسازند، طراحی شدهاند. هدف آن آشکار کردن ناسازگاریها در مراحل اولیه و اطمینان از سازگاری نرمافزار در طول فرآیند توسعه است.
CTS یک مجموعه تست خودکار است که از دو جزء نرم افزاری اصلی استفاده می کند:
- مهار تست فدراسیون تجارت CTS روی دستگاه دسکتاپ شما اجرا می شود و اجرای آزمایش را مدیریت می کند. این قابلیت به اشتراک گذاری تست ها در چندین دستگاه تحت آزمایش (DUT) را ارائه می دهد. همچنین میتوانید از ویژگی امتحان مجدد مجموعه برای امتحان مجدد شکستها به جای مجموعههای کامل استفاده کنید، که زمان اجرای مجدد را تا حد زیادی کاهش میدهد.
- موارد تست فردی در DUT اجرا می شوند. موارد تست در جاوا به عنوان تست JUnit و فایلهای Android .apk بستهبندی شدهاند تا روی هدف واقعی دستگاه اجرا شوند.
تأیید کننده مجموعه تست سازگاری (CTS Verifier) مکملی برای CTS است که برای دانلود در دسترس است. CTS Verifier تست هایی را برای API ها و عملکردهایی ارائه می دهد که بدون ورودی دستی (مانند کیفیت صدا، شتاب سنج و غیره) نمی توان آنها را روی یک دستگاه ثابت آزمایش کرد.
CTS Verifier ابزاری برای تست دستی است و شامل اجزای نرم افزار زیر است:
برنامه تأیید کننده CTS که در DUT اجرا می شود و نتایج را جمع آوری می کند.
فایل(های) اجرایی یا اسکریپت(هایی) که بر روی دستگاه دسکتاپ اجرا می شوند تا داده ها یا کنترل اضافی را برای برخی موارد آزمایشی در برنامه CTS Verifier ارائه دهند.
جریان کار

شکل 1. نحوه استفاده از CTS
این نمودار گردش کار CTS را خلاصه می کند. لطفاً برای دستورالعمل های دقیق به صفحات فرعی این بخش که با تنظیمات شروع می شود مراجعه کنید.
انواع موارد آزمایشی
CTS شامل انواع موارد زیر است:
- واحد تست واحدهای اتمی کد در پلتفرم اندروید. به عنوان مثال یک کلاس واحد، مانند java.util.HashMap.
تست های عملکردی ترکیبی از API ها را با هم در یک مورد استفاده سطح بالاتر آزمایش می کنند.
- تست های استحکام دوام سیستم را در شرایط استرس آزمایش می کنند.
- تست های عملکرد، عملکرد سیستم را در برابر معیارهای تعریف شده، به عنوان مثال رندر فریم در ثانیه، آزمایش می کنند.
مناطق تحت پوشش
موارد تست واحد حوزه های زیر را برای اطمینان از سازگاری پوشش می دهد:
حوزه | شرح |
---|---|
تست های امضا | برای هر نسخه اندروید، فایلهای XML وجود دارد که امضای همه APIهای عمومی موجود در نسخه را توصیف میکند. CTS حاوی ابزاری برای بررسی آن امضاهای API در برابر APIهای موجود در دستگاه است. نتایج بررسی امضا در فایل XML نتیجه آزمون ثبت می شود. |
تست های API پلتفرم | APIهای پلتفرم (کتابخانههای هسته و چارچوب برنامه Android) را همانطور که در فهرست SDK Class مستند شده است، آزمایش کنید تا از صحت API، از جمله امضاهای کلاس، ویژگی و روش صحیح، رفتار روش صحیح و آزمایشهای منفی اطمینان حاصل کنید تا از رفتار مورد انتظار برای کنترل نادرست پارامتر اطمینان حاصل کنید. |
تست های دالویک | تمرکز این آزمون ها بر روی آزمایش فرمت اجرایی Dalvik است. |
مدل داده پلت فرم | CTS مدل دادههای پلتفرم اصلی را که از طریق ارائهدهندگان محتوا در معرض توسعهدهندگان برنامه قرار میگیرد، همانطور که در بسته Android.provider SDK مستند شده است، آزمایش میکند: مخاطبین، مرورگر، تنظیمات و غیره. |
اهداف پلتفرم | CTS اهداف پلتفرم اصلی را همانطور که در SDK Intent های موجود مستند شده است آزمایش می کند. |
مجوزهای پلتفرم | CTS مجوزهای پلتفرم اصلی را همانطور که در مجوزهای موجود SDK مستند شده است آزمایش می کند. |
منابع پلتفرم | CTS برای مدیریت صحیح انواع منابع پلت فرم اصلی، همانطور که در انواع منابع موجود SDK مستند شده است، آزمایش می کند. این شامل تستهایی برای: مقادیر ساده، ترسیمپذیرها، نه وصله، انیمیشنها، طرحبندیها، سبکها و تمها و بارگیری منابع جایگزین میشود. |