ชุดทดสอบความเข้ากันได้

Compatibility Test Suite (CTS) เป็นชุดทดสอบเชิงพาณิชย์ฟรี ซึ่งพร้อมให้ ดาวน์โหลด เป็นไบนารีหรือเป็นซอร์สใน Android Open Source Project (AOSP) CTS แสดงถึง "กลไก" ของความเข้ากันได้

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

CTS เป็นชุดทดสอบอัตโนมัติที่ใช้ส่วนประกอบซอฟต์แวร์หลักสองส่วน:

  • สายรัดทดสอบของ สหพันธ์การค้า CTS ทำงานบนเครื่องเดสก์ท็อปของคุณและจัดการการดำเนินการทดสอบ มีความสามารถใน การทดสอบการแบ่งส่วนข้อมูล ในอุปกรณ์หลายเครื่องภายใต้การทดสอบ (DUTs) คุณยังสามารถใช้คุณลักษณะ ลองชุดใหม่ เพื่อลองความล้มเหลวอีกครั้งเท่านั้น แทนที่จะใช้ชุดเต็ม ซึ่งช่วยลดเวลาในการเรียกใช้ซ้ำได้อย่างมาก
  • กรณีทดสอบส่วนบุคคลจะดำเนินการบน DUT กรณีทดสอบเขียนด้วยภาษา Java เป็นการทดสอบ JUnit และไฟล์ Android .apk ที่ทำแพ็กเกจไว้เพื่อรันบนอุปกรณ์เป้าหมายจริง

ตัวตรวจสอบความเข้ากันได้ของชุดทดสอบ (CTS Verifier) ​​เป็นส่วนเสริมของ CTS ที่มีให้ ดาวน์โหลด CTS Verifier ให้การทดสอบสำหรับ API และฟังก์ชันที่ไม่สามารถทดสอบบนอุปกรณ์ที่อยู่กับที่โดยไม่ต้องป้อนข้อมูลด้วยตนเอง (เช่น คุณภาพเสียง มาตรความเร่ง ฯลฯ)

CTS Verifier เป็นเครื่องมือสำหรับการทดสอบด้วยตนเองและมีส่วนประกอบซอฟต์แวร์ดังต่อไปนี้:

  • แอปตรวจสอบ CTS ที่ทำงานบน DUT และรวบรวมผลลัพธ์

  • ไฟล์เรียกทำงานหรือสคริปต์ที่ทำงานบนเครื่องเดสก์ท็อปเพื่อให้ข้อมูลหรือการควบคุมเพิ่มเติมสำหรับกรณีทดสอบบางกรณีในแอป CTS Verifier

เวิร์กโฟลว์

CTS ไหล

รูปที่ 1. วิธีใช้ CTS

ไดอะแกรมนี้สรุปเวิร์กโฟลว์ CTS โปรดดูหน้าย่อยของส่วนนี้ที่เริ่มต้นด้วยการ ตั้งค่า สำหรับคำแนะนำโดยละเอียด

ประเภทของกรณีทดสอบ

CTS รวมถึงกรณีทดสอบประเภทต่อไปนี้:

  • การทดสอบหน่วย ทดสอบหน่วยอะตอมของรหัสภายในแพลตฟอร์ม Android เช่น คลาสเดียว เช่น java.util.HashMap
  • การทดสอบการทำงานจะทดสอบ การรวม API เข้าด้วยกันในกรณีการใช้งานระดับสูงกว่า

CTS รุ่นต่อไปจะรวมถึงกรณีทดสอบประเภทต่อไปนี้:
  • การทดสอบความทนทานจะ ทดสอบความทนทานของระบบภายใต้สภาวะความเครียด
  • การทดสอบประสิทธิภาพจะ ทดสอบประสิทธิภาพของระบบเทียบกับเกณฑ์มาตรฐานที่กำหนด เช่น การเรนเดอร์เฟรมต่อวินาที

พื้นที่ที่ครอบคลุม

กรณีทดสอบหน่วยครอบคลุมพื้นที่ต่อไปนี้เพื่อให้แน่ใจว่าเข้ากันได้:

พื้นที่ คำอธิบาย
การทดสอบลายเซ็น สำหรับ Android แต่ละรุ่น จะมีไฟล์ XML ที่อธิบายลายเซ็นของ API สาธารณะทั้งหมดที่มีอยู่ในรุ่น CTS มียูทิลิตี้เพื่อตรวจสอบลายเซ็น API เหล่านั้นกับ API ที่มีอยู่ในอุปกรณ์ ผลลัพธ์จากการตรวจสอบลายเซ็นจะถูกบันทึกไว้ในไฟล์ XML ผลการทดสอบ
การทดสอบ API ของแพลตฟอร์ม ทดสอบ API ของแพลตฟอร์ม (ไลบรารีหลักและ Android Application Framework) ตามเอกสารใน ดัชนีคลาส SDK เพื่อให้แน่ใจว่า API ถูกต้อง ซึ่งรวมถึงคลาสที่ถูกต้อง แอตทริบิวต์และลายเซ็นเมธอด ลักษณะการทำงานของเมธอดที่ถูกต้อง และการทดสอบเชิงลบเพื่อให้แน่ใจว่าพฤติกรรมที่คาดไว้สำหรับการจัดการพารามิเตอร์ที่ไม่ถูกต้อง
การทดสอบ Dalvik การทดสอบมุ่งเน้นไปที่การทดสอบ Dalvik Executable Format
โมเดลข้อมูลแพลตฟอร์ม CTS ทดสอบโมเดลข้อมูลแพลตฟอร์มหลักที่เปิดเผยต่อนักพัฒนาแอปพลิเคชันผ่านผู้ให้บริการเนื้อหา ตามที่ระบุไว้ในแพ็คเกจ SDKandroid.provider : ผู้ติดต่อ เบราว์เซอร์ การตั้งค่า ฯลฯ
ความตั้งใจของแพลตฟอร์ม CTS ทดสอบเจตนาของแพลตฟอร์มหลัก ตามที่ระบุไว้ใน SDK Available Intents
สิทธิ์ของแพลตฟอร์ม CTS จะทดสอบสิทธิ์ของแพลตฟอร์มหลัก ตามที่ระบุไว้ใน SDK Available Permissions
ทรัพยากรแพลตฟอร์ม CTS ทดสอบการจัดการประเภททรัพยากรแพลตฟอร์มหลักอย่างถูกต้อง ตามที่ระบุไว้ใน SDKAvailable Resource Types ซึ่งรวมถึงการทดสอบ: ค่าอย่างง่าย ค่าที่ถอนได้ เก้าแพทช์ แอนิเมชั่น เลย์เอาต์ สไตล์และธีม และการโหลดทรัพยากรสำรอง