เอกสารนี้อธิบาย AVD สำหรับ Test Lab รวมถึงประโยชน์และข้อจำกัดที่ทราบ เรายังให้คำแนะนำเกี่ยวกับวิธีทดสอบแอปของคุณตลอดวงจรการพัฒนาอีกด้วย
แม้ว่า Test Lab AVD จะคล้ายกับ AVD สำหรับ Android Studio แต่ก็มีความแตกต่างกันเล็กน้อยระหว่างสองสิ่งนี้ ตัวอย่างเช่น AVD ใน Test Lab มีการเชื่อมต่อข้อมูลจำลองแทนที่จะเป็นการเชื่อมต่อ Wi-Fi
Test Lab AVD ที่มี .arm
หรือ (Arm) ต่อท้ายคือโปรแกรมจำลองขั้นสูงที่ให้ประโยชน์ดังต่อไปนี้:
เวลาดำเนินการทดสอบเร็วขึ้น
ขนาดและความหนาแน่นของหน้าจอสอดคล้องกับ AVD ของ Android Studio เพื่อความสอดคล้องกัน
การใช้ AVD ที่มีส่วนต่อท้ายเป็น .arm
หรือ (Arm) ให้ข้อดีเหนืออุปกรณ์ทางกายภาพประเภทอื่นๆ ดังต่อไปนี้:
ผลประโยชน์ | คำอธิบาย | กรณีการใช้งาน |
ความพร้อมใช้งานสูง | คุณสามารถเรียกใช้การทดสอบและรับผลการทดสอบได้รวดเร็วยิ่งขึ้นเมื่อทำการทดสอบกับอุปกรณ์เสมือน เนื่องจากอุปกรณ์เสมือนถูกสร้างขึ้นตามความต้องการ การทดสอบของคุณจึงเริ่มต้นแทบจะทันที ทำให้ตรวจสอบแอปของคุณได้อย่างรวดเร็ว | ทดสอบการอัปเดตแอปของคุณเล็กน้อย หรือสำหรับการทดสอบการถดถอย |
ระยะเวลาการทดสอบที่นานขึ้น | การทดสอบบนอุปกรณ์จริงจะจำกัดระยะเวลาการทดสอบที่ 45 นาทีในแต่ละอุปกรณ์ อุปกรณ์เสมือนรองรับระยะเวลาการทดสอบสูงสุด 60 นาที | เรียกใช้การทดสอบที่ยาวนานขึ้น |
ลดค่าใช้จ่าย | อุปกรณ์เสมือนมีราคา $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 โปรดดู Android ABI หากต้องการเรียนรู้ว่าอุปกรณ์ใดรองรับ ABI ให้ดู ตรวจสอบอุปกรณ์ทดสอบที่มี หมายเหตุ: หากการทดสอบในเมทริกซ์ทดสอบของคุณถูกทำเครื่องหมายว่าไม่ถูกต้อง อาจเกิดขึ้นเนื่องจากแอปของคุณมีการพึ่งพาโค้ดเนทีฟที่อุปกรณ์ ABI ไม่รองรับ |
ประสิทธิภาพกราฟิก | อุปกรณ์เสมือน Nexus และ Pixel ใช้ซอฟต์แวร์แสดงกราฟิก แอปพลิเคชันที่ใช้กราฟิกมากจะพบกับประสิทธิภาพที่ลดลง หากแอปของคุณเน้นกราฟิกมาก ให้ใช้รุ่น SmallPhone.arm และ MediumPhone.arm หรืออุปกรณ์ทางกายภาพแทน |
บันทึกหน้าจอ | การบันทึกหน้าจอบนอุปกรณ์ Nexus และ Pixel คือ 1 เฟรมต่อวินาที |
API กราฟิก | OpenGL ES 3.x ไม่รองรับในอุปกรณ์ที่ต่ำกว่าระดับ API 29 อุปกรณ์รุ่นใหม่ไม่รองรับ OpenGL/Vulkan API 100% คุณอาจสังเกตเห็นความแตกต่างเล็กน้อยในกราฟิก |