เริ่มการทดสอบกับอุปกรณ์เสมือน Android

เอกสารนี้อธิบาย AVD สำหรับ Test Lab รวมถึงคุณประโยชน์และข้อจำกัดที่ทราบ เรายังให้คำแนะนำเกี่ยวกับวิธีการทดสอบแอปของคุณตลอดวงจรการพัฒนาอีกด้วย Test Lab AVD นั้นคล้ายคลึงกับ AVD สำหรับ Android Studio แต่ได้รับการปรับให้เหมาะกับการทดสอบระบบคลาวด์ ดังนั้นจึงมีความแตกต่างเล็กน้อยระหว่างทั้งสอง

Test Lab AVD ที่มีนามสกุล .arm หรือ (Arm) เป็นโปรแกรมจำลองขั้นสูงที่ให้ประโยชน์ดังต่อไปนี้:

  • เวลาดำเนินการทดสอบเร็วขึ้น

  • ขนาดและความหนาแน่นของหน้าจอสอดคล้องกับ AVD ของ Android Studio เพื่อความสม่ำเสมอ

  • GPU รองรับกราฟิกเร่งความเร็ว

ตารางต่อไปนี้อธิบายประโยชน์ของการใช้อุปกรณ์เสมือน:

ผลประโยชน์ คำอธิบาย กรณีการใช้งาน
ความพร้อมใช้งานสูง คุณสามารถดำเนินการทดสอบและรับผลการทดสอบได้รวดเร็วยิ่งขึ้นเมื่อทำการทดสอบกับอุปกรณ์เสมือน เนื่องจากอุปกรณ์เสมือนถูกสร้างขึ้นตามความต้องการ การทดสอบของคุณจึงเริ่มต้นเกือบจะในทันที ทำให้ตรวจสอบแอปของคุณได้อย่างรวดเร็ว ทดสอบการอัปเดตเล็กๆ น้อยๆ ในแอปของคุณ หรือสำหรับการทดสอบการถดถอย
ระยะเวลาการทดสอบนานขึ้น อุปกรณ์เสมือนรองรับระยะเวลาการทดสอบสูงสุด 60 นาที การทดสอบบนอุปกรณ์จริงจำกัดระยะเวลาการทดสอบไว้ที่ 45 นาทีในแต่ละอุปกรณ์ ทำการทดสอบที่ยาวนานขึ้น
ต้นทุนที่ต่ำกว่า อุปกรณ์เสมือนมีราคาอยู่ที่ 1 ดอลลาร์ต่อชั่วโมงสำหรับอุปกรณ์เสมือนแต่ละเครื่องที่ใช้ในการทดสอบแอปของคุณ การทดสอบรายวันโดยใช้ระบบบูรณาการอย่างต่อเนื่อง หรือก่อนที่จะตรวจสอบโค้ด หากต้องการเรียนรู้เพิ่มเติม โปรดดู ระดับการใช้งาน โควต้า และราคาสำหรับ Test Lab

ทดสอบแอปของคุณด้วยอุปกรณ์เสมือน

คุณสามารถทดสอบแอปกับอุปกรณ์เสมือนได้เช่นเดียวกับที่คุณทดสอบกับอุปกรณ์จริง คุณสามารถเลือกอุปกรณ์เสมือนสำหรับการทดสอบของคุณได้เมื่อคุณกำหนดค่าเมทริกซ์การทดสอบ หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการรันการทดสอบด้วย Test Lab โปรดดู เริ่มต้นการทดสอบสำหรับ Android ด้วย Firebase Test Lab

ดูโมเดลและ API ที่รองรับ

หากต้องการดูโมเดล AVD และ API ที่ Test Lab รองรับ ให้รันคำสั่งต่อไปนี้:

gcloud firebase test android models list --filter=virtual

แนวทางปฏิบัติที่ดีที่สุดในการทดสอบแอปของคุณ

อุปกรณ์เสมือนจะเพิ่มตัวเลือกที่หลากหลายเมื่อคุณทดสอบแอปด้วย Test Lab เราขอแนะนำให้ใช้แนวทางปฏิบัติที่ดีที่สุดต่อไปนี้เพื่อทดสอบแอปของคุณตลอดวงจรการพัฒนาแอป:

ใช้โปรแกรมจำลอง Android Studio หรืออุปกรณ์ทางกายภาพที่ต่ออยู่

เมื่อพัฒนาแอปของคุณ ให้ใช้โปรแกรมจำลอง Android Studio หรืออุปกรณ์จริงที่แนบมาเพื่อตรวจสอบแต่ละบิวด์เพื่อตรวจสอบความถูกต้องเบื้องต้น หากคุณมีการทดสอบเครื่องมือ คุณจะทำการทดสอบเหล่านี้จาก Android Studio บนอุปกรณ์จริงหรืออุปกรณ์เสมือนที่ Test Lab เตรียมไว้ให้ก็ได้

ใช้ระบบ CI ในการเปลี่ยนแปลงโค้ดแต่ละครั้งเมื่อทำงานในโครงการที่ใช้ร่วมกัน

หากคุณทำงานในโครงการขนาดใหญ่ หรือหากคุณมีส่วนร่วมในโครงการที่แชร์โดยใช้ GitHub หรือไซต์ที่คล้ายกัน เราขอแนะนำให้คุณใช้ระบบการรวมอย่างต่อเนื่อง (CI) ทดสอบแอปของคุณบนอุปกรณ์เสมือนทุกครั้งที่ระบบ CI ทำงาน หรือก่อนคำขอดึงแต่ละครั้ง หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการใช้ Test Lab กับระบบ CI โปรดดู การใช้ Test Lab สำหรับ Android พร้อมระบบบูรณาการอย่างต่อเนื่อง

ทดสอบแอปของคุณบนอุปกรณ์จริงด้วย Test Lab ก่อนที่จะเผยแพร่การอัปเดตแอปที่สำคัญ

ก่อนที่คุณจะเผยแพร่การอัปเดตแอปที่มีการเปลี่ยนแปลงที่สำคัญใน UI และฟังก์ชันการทำงาน เราขอแนะนำให้คุณใช้ Test Lab เพื่อทดสอบแอปของคุณบนอุปกรณ์จริง วิธีนี้จะช่วยให้แน่ใจว่าแอปของคุณเสถียรและมีประสิทธิภาพบนอุปกรณ์จริงยอดนิยมหลายประเภท การทดสอบบนอุปกรณ์จริงยังรับประกันความครอบคลุมการทดสอบสำหรับฟังก์ชันการทำงานของแอปใดๆ ที่ต้องอาศัยคุณลักษณะของอุปกรณ์จริงที่ไม่ได้จำลองโดยอุปกรณ์เสมือน หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับคุณลักษณะเหล่านี้ โปรดดู ข้อจำกัดที่ทราบ

การอัปเดตอุปกรณ์เสมือน

ทีมงาน Android จะเพิ่มอิมเมจอุปกรณ์เสมือนใหม่ เลิกใช้งานอันเก่า และอัปเดตอิมเมจที่มีอยู่เป็นระยะๆ เราใช้การอัปเดตเหล่านี้กับอิมเมจอุปกรณ์เสมือนของเราเพื่อช่วยให้แน่ใจว่าคุณกำลังทดสอบกับ Android เวอร์ชันล่าสุดที่สะท้อนถึงประสบการณ์ของผู้ใช้ของคุณ

ในบางกรณี การอัปเดตเหล่านี้อาจทำให้การทดสอบล้มเหลวโดยไม่คาดคิด เมื่อมีการอัปเดตที่อาจถึงขั้นแตกหัก Test Lab จะรวมข้อมูลไว้ใน บันทึกประจำรุ่น ตามแนวทางปฏิบัติที่ดีที่สุด เราขอแนะนำให้คุณใช้เฟรมเวิร์กการทดสอบ เช่น Espresso ที่ทนทานต่อการเปลี่ยนแปลงเหล่านี้ทุกครั้งที่เป็นไปได้ เมื่อไม่สามารถทำได้ เราขอแนะนำให้คุณกำหนดเป้าหมายอุปกรณ์เสมือน Arm ซึ่งคาดว่าจะอัปเดตไม่บ่อยนัก

ข้อจำกัดที่ทราบ

คุณสมบัติทางกายภาพบางอย่างของอุปกรณ์ในปัจจุบันไม่ได้จำลองโดยอุปกรณ์เสมือนหรือจำลองด้วยข้อจำกัดบางประการ ตารางต่อไปนี้สรุปคุณสมบัติที่ไม่สามารถใช้งานได้บนอุปกรณ์เสมือนในปัจจุบันหรือที่มีข้อจำกัดบางประการ:

คุณสมบัติ รายละเอียด
อินเทอร์เฟซไบนารีของแอปพลิเคชัน (ABI) อุปกรณ์บางชนิดไม่รองรับ ABI ทั้งหมด หากคุณกำลังพัฒนาด้วย Android NDK อย่าลืมสร้างโค้ดสำหรับ ABI ที่อุปกรณ์ที่คุณกำหนดเป้าหมายรองรับ (ดู อุปกรณ์ที่พร้อมใช้งาน ใน Test Lab) หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการจัดการ ABI โปรดดู ABI ของ Android

หมายเหตุ: หากการทดสอบในเมทริกซ์ทดสอบของคุณถูกทำเครื่องหมายว่าไม่ถูกต้อง สิ่งนี้อาจเกิดขึ้นเนื่องจากแอปของคุณมีการพึ่งพาโค้ดเนทีฟที่ไม่รองรับโดย ABI ของอุปกรณ์

ประสิทธิภาพกราฟิก อุปกรณ์เสมือนของ Nexus และ Pixel ใช้ซอฟต์แวร์แสดงผลกราฟิก แอพพลิเคชั่นที่เน้นกราฟิกอาจประสบกับประสิทธิภาพที่ต่ำกว่า หากแอปของคุณเน้นกราฟิก ให้ลองใช้ SmallPhone.arm, MediumPhone.arm หรืออุปกรณ์ทางกายภาพแทน
API กราฟิก OpenGL ES 3.x ไม่รองรับอุปกรณ์ที่ต่ำกว่า API ระดับ 29 อุปกรณ์รุ่นใหม่เข้ากันไม่ได้ 100% กับ OpenGL/Vulkan API คุณอาจสังเกตเห็นความแตกต่างเล็กน้อยในกราฟิก
แอป Google Play สโตร์ แอป Google Play Store ไม่รองรับอุปกรณ์เสมือนของ Arm
ฟังก์ชั่นเพิ่มความเป็นจริง (AR) อุปกรณ์เสมือนไม่รองรับการทดสอบฟังก์ชัน Augmented Reality (AR)
ระดับ API ที่เก่ากว่า อุปกรณ์เสมือน Test Lab Arm ไม่รองรับระดับ API ต่ำกว่า 26

ขั้นตอนถัดไป