مجموعه تست سازگاری

مجموعه تست سازگاری (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 ارائه دهند.

جریان کار

جریان CTS

شکل 1. نحوه استفاده از CTS

این نمودار گردش کار CTS را خلاصه می کند. لطفاً برای دستورالعمل های دقیق به صفحات فرعی این بخش که با راه اندازی شروع می شود مراجعه کنید.

انواع موارد تست

CTS شامل موارد زیر است:

  • واحد تست واحدهای اتمی کد در پلتفرم اندروید. به عنوان مثال یک کلاس واحد، مانند java.util.HashMap.
  • تست های عملکردی ترکیبی از API ها را با هم در یک مورد استفاده سطح بالاتر آزمایش می کنند.

نسخه های بعدی CTS شامل انواع موارد آزمایشی زیر خواهد بود:
  • تست های استحکام دوام سیستم را در شرایط استرس آزمایش می کنند.
  • تست های عملکرد، عملکرد سیستم را در برابر معیارهای تعریف شده، به عنوان مثال رندر فریم در ثانیه، آزمایش می کنند.

مناطق تحت پوشش

موارد تست واحد حوزه های زیر را برای اطمینان از سازگاری پوشش می دهد:

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