เอกสารนี้อธิบายเกี่ยวกับ AVD สำหรับ Test Lab รวมถึงประโยชน์และข้อจำกัดที่ทราบ นอกจากนี้ เรายังมีคำแนะนำเกี่ยวกับวิธีทดสอบแอปตลอดวงจรการพัฒนาด้วย Test Lab AVD คล้ายกับ AVD สำหรับ Android Studio แต่ได้รับการเพิ่มประสิทธิภาพสำหรับการทดสอบในระบบคลาวด์ จึงมีความแตกต่างกันเล็กน้อยระหว่างทั้ง 2 อย่าง
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 ทำงาน หรือก่อน Pull Request แต่ละครั้ง ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ Test Lab กับระบบ CI ได้ที่การใช้ Test Lab สำหรับ Android กับระบบการรวมอย่างต่อเนื่อง
ทดสอบแอปบนอุปกรณ์จริงด้วย Test Lab ก่อนเผยแพร่การอัปเดตแอปที่สำคัญ
ก่อนที่จะเผยแพร่อัปเดตแอปที่มีการเปลี่ยนแปลง UI และฟังก์ชันการทำงานอย่างมาก เราขอแนะนำให้ใช้ Test Lab เพื่อทดสอบแอปในอุปกรณ์จริง ซึ่งจะช่วยให้มั่นใจว่าแอปของคุณมีความเสถียรและทำงานได้ดีบนอุปกรณ์จริงยอดนิยมที่หลากหลาย การทดสอบในอุปกรณ์จริงยังช่วยให้มั่นใจได้ว่าการทดสอบจะครอบคลุมฟังก์ชันการทำงานของแอปที่อาศัยฟีเจอร์ของอุปกรณ์จริงซึ่งอุปกรณ์เสมือนจริงจำลองไม่ได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์เหล่านี้ได้ที่ข้อจำกัดที่ทราบ
การอัปเดตอุปกรณ์เสมือนจริง
ทีม Android จะเพิ่มอิมเมจอุปกรณ์เสมือนจริงใหม่ เลิกใช้งานอิมเมจเก่า และอัปเดตอิมเมจที่มีอยู่เป็นระยะๆ เราใช้การอัปเดตเหล่านี้กับอิมเมจอุปกรณ์เสมือนจริงเพื่อช่วยให้มั่นใจว่าคุณกำลังทดสอบกับ Android เวอร์ชันล่าสุดที่แสดงถึงประสบการณ์ของผู้ใช้
ในบางกรณีที่เกิดขึ้นไม่บ่อยนัก การอัปเดตเหล่านี้อาจทำให้การทดสอบล้มเหลวโดยไม่คาดคิด เมื่อมีการอัปเดตที่อาจทำให้เกิดข้อผิดพลาด Test Lab จะระบุข้อมูลไว้ในบันทึกประจำรุ่น แนวทางปฏิบัติแนะนำคือเราขอแนะนำให้คุณใช้เฟรมเวิร์กการทดสอบ เช่น Espresso ที่มีประสิทธิภาพต่อการเปลี่ยนแปลงเหล่านี้ทุกครั้งที่ทำได้ หากเป็นไปไม่ได้ เราขอแนะนำให้คุณกำหนดเป้าหมายอุปกรณ์เสมือนจริง Arm ซึ่งคุณอาจคาดหวังว่าจะอัปเดตไม่บ่อยนัก
ข้อจำกัดที่ทราบ
ปัจจุบันอุปกรณ์เสมือนจริงไม่ได้จำลองฟีเจอร์บางอย่างของอุปกรณ์จริง หรือจำลองโดยมีข้อจำกัดบางอย่าง ตารางต่อไปนี้สรุปฟีเจอร์ที่ยังไม่พร้อมใช้งานในอุปกรณ์เสมือนจริง หรือฟีเจอร์ที่พร้อมใช้งานแต่มีข้อจำกัดบางอย่าง
| ฟีเจอร์ | รายละเอียด |
| Application Binary Interface (ABI) | อุปกรณ์บางเครื่องอาจไม่รองรับ ABI ทั้งหมด หากคุณกำลังพัฒนาด้วย Android NDK โปรดตรวจสอบว่าได้สร้างโค้ดสำหรับ ABI ที่อุปกรณ์เป้าหมายรองรับ (ดูอุปกรณ์ที่พร้อมใช้งานใน Test Lab) ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ ABI ได้ที่Android ABI
หมายเหตุ: หากการทดสอบในเมทริกซ์ทดสอบมีการทำเครื่องหมายว่าไม่ถูกต้อง อาจเป็นเพราะแอปของคุณขึ้นอยู่กับโค้ดแบบเนทีฟที่ ABI ของอุปกรณ์ไม่รองรับ |
| ประสิทธิภาพกราฟิก | อุปกรณ์เสมือนจริง Nexus และ Pixel ใช้การแสดงผลกราฟิกซอฟต์แวร์ แอปพลิเคชันที่ใช้กราฟิกมากอาจมีประสิทธิภาพลดลง หากแอปใช้กราฟิกมาก ให้พิจารณาใช้ SmallPhone.arm, MediumPhone.arm หรืออุปกรณ์จริงแทน |
| Graphics API | อุปกรณ์ที่ต่ำกว่าระดับ API 29 ไม่รองรับ OpenGL ES 3.x อุปกรณ์รุ่นใหม่ไม่รองรับ API ของ OpenGL/Vulkan 100% คุณอาจสังเกตเห็นความแตกต่างเล็กน้อยในกราฟิก |
| แอป Google Play Store | อุปกรณ์เสมือนจริง Arm ไม่รองรับแอป Google Play Store |
| ฟังก์ชันการทำงานของเทคโนโลยีความจริงเสริม (AR) | อุปกรณ์เสมือนจริงไม่รองรับการทดสอบฟังก์ชันการทำงานของเทคโนโลยีความจริงเสริม (AR) |
| ระดับ API ที่เก่ากว่า | อุปกรณ์เสมือนจริง Test Lab Arm ไม่รองรับระดับ API ที่ต่ำกว่า 26 |