ชุดทดสอบความเข้ากันได้ (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
เวิร์กโฟลว์

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