เรียกใช้การทดสอบ CTS

Trade Federation เป็นกรอบการทดสอบอย่างต่อเนื่องสำหรับการทดสอบบนอุปกรณ์ Android หากต้องการเรียกใช้ชุดทดสอบความเข้ากันได้ (CTS) ขั้นแรกให้อ่าน ภาพรวมของ Trade Federation เพื่อดูคำอธิบายของกรอบการทดสอบ Tradefed

หากต้องการรันแผนการทดสอบ:

  1. ตั้งค่าอุปกรณ์ภายใต้การทดสอบ (DUT) ตามการ ตั้งค่าอุปกรณ์ Android
  2. ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งทั้ง Android Debug Bridge (adb) และ Android Asset Packaging Tool (AAPT) เวอร์ชันล่าสุด และเพิ่มตำแหน่งของเครื่องมือเหล่านั้นในเส้นทางระบบของเครื่องของคุณ สำหรับข้อมูลเกี่ยวกับการติดตั้งเครื่องมือเหล่านั้น โปรดดู การตั้งค่า CTS: ADB และ AAPT
  3. ดาวน์โหลด CTS บิวด์ที่เผยแพร่ลง ในเครื่องโฮสต์ Linux ของคุณและแตกไฟล์ซิบบิลด์ไปยังตำแหน่งโฮสต์
  4. เชื่อมต่ออุปกรณ์อย่างน้อยหนึ่งเครื่อง เพื่อเตรียม DUT:
    • กดปุ่ม โฮม เพื่อตั้งค่าอุปกรณ์ให้เป็นหน้าจอหลัก
    • อย่าใช้ DUT สำหรับงานอื่นใด
    • ให้ DUT อยู่ในตำแหน่งคงที่เพื่อหลีกเลี่ยงการกระตุ้นการทำงานของเซ็นเซอร์
    • หันกล้องของอุปกรณ์ไปที่วัตถุที่สามารถโฟกัสได้
    • อย่ากดปุ่มใดๆ บนอุปกรณ์ในขณะที่ CTS กำลังทำงาน การกดปุ่มหรือสัมผัสหน้าจอของ DUT จะรบกวนการทดสอบที่ทำงานอยู่ และอาจทำให้การทดสอบล้มเหลว
  5. เรียกใช้สคริปต์ cts-tradefed ของ คอนโซล CTS จากโฟลเดอร์ที่แพ็กเกจ CTS ถูกคลายซิป บนเชลล์บรรทัดคำสั่งของโฮสต์ ให้รัน:

    ./android-cts/tools/cts-tradefed
  6. รันแผนการทดสอบเริ่มต้น (ประกอบด้วยแพ็คเกจการทดสอบทั้งหมด):

    cts-tradefed > run cts
    • หากคุณต้องการปรับปรุงเวลาดำเนินการทดสอบ คุณสามารถ แบ่งการทดสอบ ในอุปกรณ์หลายเครื่องได้ Sharding ต้องการให้โฮสต์เชื่อมต่ออุปกรณ์อย่างน้อยสองเครื่อง แต่แนะนำให้ใช้อุปกรณ์หกเครื่องขึ้นไปเพื่อประสิทธิภาพ เมื่อแบ่งอุปกรณ์มากกว่า 1 เครื่อง:

      • สำหรับ Android 9 ขึ้นไป ให้ใช้ตัวเลือกคำสั่ง

        --shard-count number_of_shards
      • สำหรับ Android 8.1 และต่ำกว่า ให้ใช้ตัวเลือกคำสั่ง

        --shards number_of_shards
    • หากคุณไม่ต้องการรันชุดทดสอบทั้งหมด คุณสามารถรัน แผน CTS ที่คุณเลือกได้จากบรรทัดคำสั่ง:

      run cts --plan test_plan_name

      หากต้องการค้นหาชื่อแผนการทดสอบ:

      • สำหรับ Android 7.0 และสูงกว่า หากต้องการดูรายการโมดูลทดสอบ ให้ป้อน

        list modules
      • สำหรับ Android 6.0 และต่ำกว่า หากต้องการดูรายการแผนการทดสอบในพื้นที่เก็บข้อมูล ให้ป้อน

        list plans
      • สำหรับ Android 6.0 และต่ำกว่า หากต้องการดูรายการแพ็กเกจทดสอบในพื้นที่เก็บข้อมูล ให้ป้อน

        list packages
    • สำหรับตัวเลือกคำสั่งเพิ่มเติมขึ้นอยู่กับเวอร์ชัน CTS โปรดดูที่ การอ้างอิงคำสั่งคอนโซล หรือใต้ "ช่วยเหลือทั้งหมด" ในคอนโซล Tradefed

  7. เรียกใช้เซสชันการลองใหม่หลายครั้งจนกว่าโมดูลการทดสอบทั้งหมดจะเสร็จสมบูรณ์ และจำนวนความล้มเหลวในการทดสอบจะเหมือนกันในสองเซสชันการลองใหม่ครั้งล่าสุด

    • สำหรับ Android 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 Command Console

    • หากต้องการทำความเข้าใจรายละเอียดการใช้งานสำหรับการลอง CTS อีกครั้ง โปรดดูที่ Trade Federation Suite Retry

  8. เรียกใช้เซสชันการลองใหม่เฉพาะกับการทดสอบที่มีการกำหนดพารามิเตอร์ที่ล้มเหลวเท่านั้น ผ่านการทดสอบแบบกำหนดพารามิเตอร์แล้วจะไม่ลองอีกครั้ง

    • สำหรับ Android 11 และสูงกว่า ตัวเลือกคำสั่งลองใหม่ต่อไปนี้จะเปิดใช้งานตามค่าเริ่มต้นในคำสั่ง run cts :

      run retry --retry  --new-parameterized-handling
  9. ดูความคืบหน้าของการทดสอบและผลลัพธ์ที่รายงานบนคอนโซล

เรียกใช้ CTS โดยใช้ Android Test Station

Android Test Station เป็นเครื่องมือทดสอบอัตโนมัติที่นักพัฒนา Android และวิศวกรทดสอบสามารถใช้เพื่อใช้อินเทอร์เฟซผู้ใช้สำหรับการเรียกใช้ชุดการทดสอบมาตรฐาน ใช้งานได้กับ ชุดทดสอบความเข้ากันได้ของ Android (CTS)

เครื่องมือนี้เผยแพร่ต่อสาธารณะผ่าน คู่มือผู้ใช้ ATS และโค้ดของเครื่องมือเป็นแบบโอเพ่นซอร์สใน AOSP ( multitest_transport , tradefed_cluster )

เรียกใช้ CTS สำหรับโหมดสำรอง

CTS 10 R4 release เพิ่มแผนการทดสอบสำหรับอุปกรณ์ที่มีโหมดอื่นหรือสำหรับอุปกรณ์ที่มีมากกว่าหนึ่งหน้าจอ ดำเนินการแผนการทดสอบโหมดทางเลือกโดยใช้ 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

Android 13 ขึ้นไปรองรับการทดสอบหลายอุปกรณ์ การทดสอบที่ต้องใช้อุปกรณ์หลายเครื่องจะดำเนินการโดยอัตโนมัติระหว่างการทำงานของ CTS CTS 13 มีการทดสอบหลายอุปกรณ์ซึ่งจะทริกเกอร์โดยอัตโนมัติเมื่อใช้ชาร์ดดิ้ง แม้ว่าการทดสอบไม่จำเป็นต้องเปลี่ยนแปลงการตั้งค่าทางกายภาพเพิ่มเติม แต่จำเป็นต้อง ติดตั้ง virtualenv เพื่อให้การทดสอบทำงานได้อย่างถูกต้อง สำหรับรายละเอียด โปรดดู Multi-Devices Suites

เรียกใช้การทดสอบหลายอุปกรณ์

หากต้องการรันการทดสอบหลายอุปกรณ์อย่างอิสระ ให้ใช้โค้ดต่อไปนี้:

  cts-tradefed > run cts-multidevice
  

รองรับตัวเลือกปกติทั้งหมด หากต้องการกำหนดเป้าหมายอุปกรณ์เฉพาะ ให้เพิ่ม --serial <serial1> --serial <serial2> และอื่นๆ สำหรับจำนวนอุปกรณ์ที่เป็นเป้าหมาย

หากต้องการทริกเกอร์การทดสอบหลายอุปกรณ์โดยอัตโนมัติ ให้ใช้การแบ่งส่วน เช่นเดียวกับใน --shard-count 2