เริ่มทดสอบกับอุปกรณ์เสมือน 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 หรืออุปกรณ์จริงแทน
Graphics API อุปกรณ์ที่ต่ำกว่า API ระดับ 29 ไม่รองรับ OpenGL ES 3.x อุปกรณ์รุ่นใหม่ๆ ใช้งาน OpenGL/Vulkan API ได้ไม่เต็ม 100% คุณจึงอาจเห็นความแตกต่างเล็กน้อยในกราฟิก
แอป Google Play Store แอป Google Play Store ไม่ได้รับการสนับสนุนในอุปกรณ์เสมือน Arm
ฟังก์ชันการทำงาน Augmented Reality (AR) อุปกรณ์เสมือนไม่รองรับการทดสอบฟังก์ชันการทำงานของ Augmented Reality (AR)
ระดับ API เก่า Test Lab อุปกรณ์เสมือน ARM ไม่รองรับ API ระดับต่ำกว่า 26

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