تست های CTS را اجرا کنید

Trade Federation یک چارچوب آزمایشی پیوسته برای اجرای تست ها در دستگاه های اندرویدی است. برای اجرای مجموعه تست سازگاری (CTS)، ابتدا نمای کلی فدراسیون تجارت را برای توضیح چارچوب تست Tradefed بخوانید.

برای اجرای طرح آزمایشی:

  1. دستگاه‌های تحت آزمایش (DUTs) را طبق راه‌اندازی دستگاه Android تنظیم کنید.
  2. اطمینان حاصل کنید که نسخه های اخیر پل اشکال زدایی اندروید (adb) و ابزار بسته بندی دارایی اندروید (AAPT) را نصب کرده اید و مکان آن ابزارها را به مسیر سیستم دستگاه خود اضافه کرده اید. برای اطلاعات در مورد نصب آن ابزارها، به تنظیم CTS: ADB و AAPT مراجعه کنید.
  3. بیلدهای CTS منتشر شده را روی دستگاه میزبان لینوکس خود دانلود کنید و بیلد را در مکان میزبان از حالت فشرده خارج کنید.
  4. حداقل یک دستگاه را وصل کنید. برای تهیه DUT:
    • دکمه هوم را فشار دهید تا دستگاه روی صفحه اصلی تنظیم شود.
    • از DUT برای هیچ کار دیگری استفاده نکنید.
    • DUT را در یک موقعیت ثابت نگه دارید تا از تحریک فعالیت حسگر جلوگیری کنید.
    • دوربین دستگاه را به سمت جسمی بگیرید که قابل فوکوس باشد.
    • هنگامی که CTS در حال اجرا است، هیچ کلیدی را روی دستگاه فشار ندهید. فشار دادن کلیدها یا لمس صفحه نمایش یک DUT در تست های در حال اجرا اختلال ایجاد می کند و ممکن است منجر به شکست تست شود.
  5. اسکریپت cts-tradefed کنسول CTS را از پوشه ای که بسته CTS در آن از حالت فشرده خارج شده است، اجرا کنید. در پوسته خط فرمان میزبان، اجرا کنید:

    ./android-cts/tools/cts-tradefed
  6. طرح آزمایشی پیش فرض را اجرا کنید (شامل تمام بسته های آزمایشی است):

    cts-tradefed > run cts
    • اگر می‌خواهید زمان اجرای آزمایش را بهبود ببخشید، می‌توانید آزمایش‌ها را در چندین دستگاه تقسیم کنید . Sharding به میزبان نیاز دارد که حداقل دو دستگاه را متصل کند، اما شش دستگاه یا بیشتر برای کارایی توصیه می شود. هنگام اشتراک گذاری بیش از 1 دستگاه:

      • برای اندروید 9 و بالاتر از گزینه command استفاده کنید

        --shard-count number_of_shards
      • برای اندروید 8.1 و پایین تر، از گزینه command استفاده کنید

        --shards number_of_shards
    • اگر نمی خواهید کل مجموعه آزمایشی را اجرا کنید، می توانید برنامه CTS انتخابی خود را از خط فرمان اجرا کنید:

      run cts --plan test_plan_name

      برای پیدا کردن نام طرح آزمون:

      • برای اندروید 7.0 و بالاتر، برای مشاهده لیست ماژول های تست، وارد شوید

        list modules
      • برای اندروید 6.0 و پایین تر، برای مشاهده لیستی از برنامه های آزمایشی در مخزن، وارد شوید

        list plans
      • برای اندروید 6.0 و پایین تر، برای مشاهده لیست بسته های آزمایشی در مخزن، وارد شوید

        list packages
    • برای گزینه‌های دستورات اضافی بسته به نسخه‌های CTS، به مرجع فرمان کنسول یا زیر «همه کمک» در کنسول Tradefed مراجعه کنید.

  7. چندین جلسه سعی مجدد را اجرا کنید تا زمانی که همه ماژول های تست کامل شوند و اعداد شکست آزمون در دو جلسه امتحان مجدد یکسان باشند.

    • برای اندروید 9 و بالاتر، استفاده کنید

      run retry --retry session_number --shard-count number_of_shards
    • برای Android 7.0–8.1، استفاده کنید

      run cts --retry session_number --shards number_of_shards
    • برای گزینه های اضافی دستور Retry مجدد بسته به نسخه CTS، به کنسول فرمان CTS v2 مراجعه کنید.

    • برای درک جزئیات پیاده سازی برای تلاش مجدد CTS، به تلاش مجدد مجموعه فدراسیون تجارت مراجعه کنید.

  8. فقط در تست‌های پارامتری ناموفق، جلسه امتحان مجدد را اجرا کنید. آزمون‌های پارامتری گذرانده شده دوباره امتحان نمی‌شوند.

    • برای اندروید 11 و بالاتر، گزینه دستور retry زیر به طور پیش فرض در دستور run cts فعال است:

      run retry --retry  --new-parameterized-handling
  9. پیشرفت تست و نتایج گزارش شده در کنسول را مشاهده کنید.

CTS را با استفاده از Android Test Station اجرا کنید

Android Test Station یک ابزار اتوماسیون تست است که توسعه دهندگان اندروید و مهندسان تست می توانند از آن برای استفاده از یک رابط کاربری برای اجرای مجموعه های تست استاندارد استفاده کنند. با مجموعه تست سازگاری اندروید (CTS) کار می کند.

این ابزار از طریق راهنمای کاربر ATS در دسترس عموم است و کد آن در AOSP ( multitest_transport , tradefed_cluster ) منبع باز است.

CTS را برای حالت های جایگزین اجرا کنید

نسخه CTS 10 R4 یک طرح آزمایشی برای دستگاه‌هایی با حالت‌های جایگزین یا برای دستگاه‌هایی با بیش از یک صفحه نمایش اضافه می‌کند. طرح تست حالت های جایگزین را با استفاده از run cts-foldable اجرا کنید.

موارد تست رد شده یا ناموفق برای حالت صفحه نمایش جایگزین با مقدار display_mode اضافه می شود، به عنوان مثال، testcase1[display_mode=0] .

در CTS 13، DeviceStateManager API اجازه می دهد تا ماژول های آزمایشی با گزینه پیکربندی زیر در حالت های مختلف دستگاه یک دستگاه تاشو اجرا شوند. اجرای تست در CTS بر اساس حالت های تاشو نمایشگر تعریف شده در دستگاه بدون نیاز به اجرای طرح آزمایشی cts-foldable به صورت خودکار است.

<option name="config-descriptor:metadata" key="parameter" value="all_foldable_states" />

تست چند دستگاه در CTS

اندروید 13 و بالاتر از تست چند دستگاهی پشتیبانی می کند. تست هایی که به چندین دستگاه نیاز دارند به طور خودکار در طول اجرای CTS اجرا می شوند. CTS 13 شامل آزمایش‌های چند دستگاهی است که هنگام استفاده از اشتراک‌گذاری، به‌طور خودکار فعال می‌شوند. در حالی که آزمایش نیازی به تغییرات اضافی در تنظیمات فیزیکی ندارد، virtualenv باید نصب شود تا تست ها به درستی اجرا شوند. برای جزئیات، به مجموعه‌های چند دستگاهی مراجعه کنید.

تست های چند دستگاهی را اجرا کنید

برای اجرای مستقل تست چند دستگاه، از کد زیر استفاده کنید:

  cts-tradefed > run cts-multidevice
  

همه گزینه های معمولی پشتیبانی می شوند. برای هدف قرار دادن دستگاه های خاص، --serial <serial1> --serial <serial2> و غیره را برای تعداد دستگاه های مورد نظر اضافه کنید.

برای راه‌اندازی خودکار آزمایش‌های چند دستگاهی، مانند --shard-count 2 از Sharding استفاده کنید.