เริ่มการทดสอบสำหรับ Android ด้วย Firebase Test Lab

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

ดูข้อมูลเกี่ยวกับโควต้าและแพ็กเกจราคาของ Test Lab ได้ที่ การใช้งาน โควต้า และราคา

แนวคิดหลัก

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

อุปกรณ์ × การดำเนินการทดสอบ = เมทริกซ์ทดสอบ

อุปกรณ์
อุปกรณ์จริงหรืออุปกรณ์เสมือนจริง (Android เท่านั้น) ที่คุณเรียกใช้การทดสอบ เช่น โทรศัพท์ แท็บเล็ต หรืออุปกรณ์ที่สวมใส่ได้ ระบบจะระบุอุปกรณ์ในเมทริกซ์ทดสอบตามรุ่นของอุปกรณ์ เวอร์ชันของระบบปฏิบัติการ การวางแนวหน้าจอ และภาษา (หรือที่เรียกว่าการตั้งค่าภูมิศาสตร์และภาษา)
การทดสอบ การดำเนินการทดสอบ
การทดสอบ (หรือชุดกรณีทดสอบ) ที่จะเรียกใช้ในอุปกรณ์ คุณสามารถเรียกใช้การทดสอบ 1 รายการต่ออุปกรณ์ หรือจะแบ่งการทดสอบออกเป็นส่วนๆ และเรียกใช้กรณีทดสอบในอุปกรณ์ต่างๆ ก็ได้
เมทริกซ์ทดสอบ
มีสถานะและผลการทดสอบสำหรับการดำเนินการทดสอบ หากการดำเนินการทดสอบใดก็ตามในเมทริกซ์ไม่สำเร็จ เมทริกซ์ทั้งหมดจะไม่สำเร็จ

ขั้นตอนที่ 1: เตรียมการทดสอบเพื่ออัปโหลดไปยัง Test Lab

ประเภทการทดสอบที่ใช้ได้

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

  • การทดสอบการวัดคุม หรือ การทดสอบหน่วยที่ใช้การวัดคุม: การทดสอบที่คุณเขียนขึ้นโดยใช้ Espresso หรือ UI Automator เฟรมเวิร์ก การทดสอบนี้ช่วยให้คุณยืนยันสถานะของแอปอย่างชัดเจนเพื่อตรวจสอบการทำงานที่ถูกต้องโดยใช้ AndroidJUnitRunnerAPIs

  • การทดสอบ Robo: การทดสอบอัตโนมัติที่จะวิเคราะห์ UI ของแอป จากนั้นจะสำรวจ UI อย่างเป็นระบบโดยจำลองกิจกรรมของผู้ใช้ โดยที่คุณไม่ต้องเขียนโค้ดใดๆ ดูข้อมูลเพิ่มเติมได้ที่ เกี่ยวกับการทดสอบ Robo

  • การทดสอบ Game Loop: การทดสอบที่ใช้ "โหมดเดโม" เพื่อ จำลองการกระทำของผู้เล่นในแอปเกม ซึ่งเป็นวิธีที่รวดเร็วและปรับขนาดได้เพื่อยืนยันว่าเกมของคุณทำงานได้ดีสำหรับผู้ใช้ เมื่อเลือกเรียกใช้การทดสอบ Game Loop คุณจะทำสิ่งต่อไปนี้ได้

    • เขียนการทดสอบที่เฉพาะเจาะจงกับเกมเอนจิน

    • หลีกเลี่ยงการเขียนโค้ดเดียวกันสำหรับ UI หรือเฟรมเวิร์กการทดสอบที่แตกต่างกัน

    • สร้างหลายๆ ลูปเพื่อเรียกใช้ในการดำเนินการทดสอบครั้งเดียว (ดูข้อมูลเพิ่มเติมได้ที่ เกี่ยวกับการทดสอบ Game Loop) นอกจากนี้ คุณยังจัดระเบียบลูปได้โดยใช้ป้ายกำกับเพื่อให้ติดตามและเรียกใช้ลูปที่เฉพาะเจาะจงได้อีกครั้ง

    ดูวิธีการเรียกใช้การทดสอบนี้ ด้วย Test Labได้ที่เรียกใช้การทดสอบ Game Loop

เครื่องมือสำหรับเรียกใช้การทดสอบ

คุณสามารถเลือกเครื่องมือต่อไปนี้เพื่อเรียกใช้การทดสอบ

  • แนะนำสำหรับผู้ใช้ครั้งแรก: คอนโซล Firebase ช่วยให้คุณอัปโหลด แอปและเริ่มการทดสอบจากเว็บเบราว์เซอร์ได้ ดูวิธีการเรียกใช้การทดสอบโดยใช้เครื่องมือนี้ได้ที่ ทดสอบด้วย Firebaseคอนโซล

  • การผสานรวม Android Studio ช่วยให้คุณทดสอบ แอปได้โดยไม่ต้องออกจากสภาพแวดล้อมในการพัฒนาซอฟต์แวร์ ดูวิธีการเรียกใช้การทดสอบโดยใช้เครื่องมือนี้ได้ที่ทดสอบด้วย Android Studio

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

นอกจากนี้ คุณยังทดสอบแอปได้โดยไม่มีค่าใช้จ่ายด้วย Test Lab เมื่ออัปโหลดและ เผยแพร่ไฟล์ APK ของแอปไปยัง Play Store โดยใช้ช่องทางอัลฟ่าหรือ เบต้า ดูข้อมูลเพิ่มเติมได้ที่ ใช้รายงานก่อนการเปิดตัวเพื่อระบุปัญหา และการทดสอบ Robo

ขั้นตอนที่ 2: เลือกอุปกรณ์ทดสอบ

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

ขั้นตอนที่ 3: ดูผลการทดสอบ

ไม่ว่าคุณจะเริ่มการทดสอบด้วยวิธีใดก็ตาม Test Lab จะจัดการผลการทดสอบทั้งหมดและคุณสามารถดูผลการทดสอบทางออนไลน์ได้

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

ผลการทดสอบดิบ มีบันทึกการทดสอบและรายละเอียดข้อผิดพลาดของแอป และระบบจะจัดเก็บไว้ใน Bucket ของ Google Cloud โดยอัตโนมัติ หากคุณระบุ Bucket คุณจะต้องรับผิดชอบค่าใช้จ่ายในการจัดเก็บ หากไม่ระบุ Bucket Test Lab จะสร้าง Bucket ให้คุณโดยไม่มีค่าใช้จ่าย

ดูรายละเอียดเพิ่มเติมได้ที่ วิเคราะห์ผลลัพธ์Firebase Test Lab

เมื่อเริ่มการทดสอบจาก Android Studio คุณจะดูผลการทดสอบได้จากภายในสภาพแวดล้อมในการพัฒนาซอฟต์แวร์ด้วย

การล้างข้อมูลอุปกรณ์

Google ให้ความสำคัญกับความปลอดภัยของข้อมูลแอปเป็นอย่างมาก เราปฏิบัติตามแนวทางปฏิบัติแนะนำที่เป็นมาตรฐานอุตสาหกรรมเพื่อนำข้อมูลแอปออกและรีเซ็ตการตั้งค่าระบบสำหรับอุปกรณ์จริงหลังจากการเรียกใช้การทดสอบทุกครั้ง เพื่อให้มั่นใจว่าอุปกรณ์พร้อมที่จะเรียกใช้การทดสอบใหม่ สำหรับอุปกรณ์ที่เราสามารถแฟลชด้วยอิมเมจการกู้คืนที่กำหนดเองได้ เราจะดำเนินการแฟลชอุปกรณ์เหล่านี้ระหว่างการเรียกใช้การทดสอบ

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


Test Lab และบริการ Google Play

Test Lab อุปกรณ์มักจะทำงานบน SDK ของบริการ Google Play เวอร์ชันล่าสุด แต่บางอุปกรณ์อาจต้องใช้เวลา 2-3 วันในการอัปเดตหลังจากเผยแพร่ SDK เวอร์ชันใหม่ โปรดทราบว่าคุณอาจพบปัญหาความเข้ากันได้กับอุปกรณ์บางเครื่อง

การอนุญาตให้อุปกรณ์ทดสอบเข้าถึงเซิร์ฟเวอร์แบ็กเอนด์ส่วนตัว

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

การโฆษณาบนอุปกรณ์เคลื่อนที่

Test Lab มีโครงสร้างพื้นฐานที่รองรับการปรับขนาดได้ซึ่งจะทำให้การทดสอบแอปเป็นแบบอัตโนมัติ และน่าเสียดายที่แอปที่เป็นอันตรายซึ่งออกแบบมาเพื่อสร้างรายได้จากโฆษณาที่เป็นการฉ้อโกงอาจใช้ความสามารถนี้ในทางที่ผิด

วิธีลดปัญหาดังกล่าว

  • หากคุณใช้หรือทำงานร่วมกับผู้ให้บริการโฆษณาดิจิทัลบุคคลที่สาม (เช่น เครือข่ายโฆษณาหรือแพลตฟอร์มฝั่งดีมานด์) เราขอแนะนำให้คุณใช้โฆษณาทดสอบแทนโฆษณาจริงระหว่างการพัฒนาและการทดสอบแอป

  • หากคุณต้องใช้โฆษณาจริงในการทดสอบ โปรดแจ้งให้ผู้ให้บริการโฆษณาดิจิทัล ที่คุณทำงานด้วยกรองรายได้และการเข้าชมที่เกี่ยวข้องทั้งหมด ที่สร้างขึ้นจาก Test Lab โดยใช้ ช่วงที่อยู่ IP ด้านล่าง คุณไม่จำเป็นต้อง แจ้งให้ผู้ให้บริการโฆษณาที่เป็นเจ้าของโดย Google ทราบ เนื่องจากTest Labจะจัดการให้คุณ

ที่อยู่ IP ที่อุปกรณ์ Test Lab ใช้

การจราจรของข้อมูลในเครือข่ายทั้งหมดที่สร้างขึ้นโดยอุปกรณ์ Test Lab จะมาจากช่วงที่อยู่ IP ต่อไปนี้ นอกจากนี้ คุณยังเข้าถึงรายการนี้ได้โดยใช้ gcloud beta firebase test ip-blocks list คำสั่ง ใน gcloud CLI ระบบจะอัปเดตรายการนี้ปีละครั้งโดยเฉลี่ย

แพลตฟอร์มและประเภทอุปกรณ์ ช่วงที่อยู่ IP CIDR
อุปกรณ์จริง Android และ iOS, อุปกรณ์เสมือน Arm

70.32.128.0/19 (เพิ่มเมื่อ 02-2022)

108.177.6.0/23

108.177.18.192/26 (เพิ่มเมื่อ 02-2022)

108.177.29.64/27 (ขยายเมื่อ 02-2022)

108.177.31.160/27 (เพิ่มเมื่อ 02-2022)

199.36.156.8/29 (เพิ่มเมื่อ 02-2022)

199.36.156.16/28 (เพิ่มเมื่อ 02-2022)

209.85.131.0/27 (เพิ่มเมื่อ 02-2022)

2001:4860:1008::/48 (เพิ่มเมื่อ 02-2022)

2001:4860:1018::/48 (เพิ่มเมื่อ 02-2022)

2001:4860:1019::/48 (เพิ่มเมื่อ 02-2022)

2001:4860:1020::/48 (เพิ่มเมื่อ 02-2022)

2001:4860:1022::/48 (เพิ่มเมื่อ 02-2022)

2001:4860:101d::/48 (เพิ่มเมื่อ 10-2025)

2001:4860:101e::/48 (เพิ่มเมื่อ 10-2025)

2001:4860:1031::/48 (เพิ่มเมื่อ 10-2025)

70.32.128.48/28 (เพิ่มเมื่อ 04-2024)

70.32.150.192/27 (เพิ่มเมื่อ 09-2025)

108.177.6.0/27 (เพิ่มเมื่อ 09-2025)

108.177.24.160/27 (เพิ่มเมื่อ 09-2025)

108.177.29.0/27 (เพิ่มเมื่อ 09-2025)

อุปกรณ์ Android เสมือนจริง (ที่ไม่ใช่ Arm)

34.68.194.64/29 (เพิ่มเมื่อ 11-2019)

34.69.234.64/29 (เพิ่มเมื่อ 11-2019)

34.73.34.72/29 (เพิ่มเมื่อ 11-2019)

34.73.178.72/29 (เพิ่มเมื่อ 11-2019)

34.74.10.72/29 (เพิ่มเมื่อ 02-2022)

34.136.2.136/29 (เพิ่มเมื่อ 02-2022)

34.136.50.136/29 (เพิ่มเมื่อ 02-2022)

34.145.234.144/29 (เพิ่มเมื่อ 02-2022)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27 (เพิ่มเมื่อ 7-2019)

35.245.243.240/29 (เพิ่มเมื่อ 02-2022)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

ช่วงที่อยู่ IP ของอุปกรณ์ที่ไม่ได้ใช้อีกต่อไป

74.125.122.32/29 (นำออกเมื่อ 02-2022)

216.239.44.24/29 (นำออกเมื่อ 02-2022)