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

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

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

แนวคิดหลัก

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

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

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

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

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

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

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

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

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

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

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

    • สร้างหลายลูปเพื่อเรียกใช้ในการดำเนินการทดสอบครั้งเดียว (ไม่บังคับ) (ดูข้อมูลเพิ่มเติมได้ที่เกี่ยวกับการทดสอบ Game Loop) นอกจากนี้ คุณยังจัดระเบียบ Loop โดยใช้ป้ายกำกับเพื่อติดตามและเรียกใช้ 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 ซึ่งมีข้อมูลที่เกี่ยวข้องมากที่สุดสำหรับการทดสอบของคุณ รวมถึงวิดีโอเฉพาะกรอบการทดสอบ ภาพหน้าจอ จำนวนการทดสอบที่ผ่าน ไม่ผ่าน หรือได้ผลลัพธ์ที่ไม่แน่นอน และอื่นๆ

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

ดูรายละเอียดเพิ่มเติมได้ที่หัวข้อวิเคราะห์ผลลัพธ์ของ 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)

108.177.25.128/27 (เพิ่มเมื่อ 05-2026)

108.177.26.128/26 (เพิ่มเมื่อ 05-2026)

108.177.29.192/26 (เพิ่มเมื่อ 05-2026)

172.217.120.64/26 (เพิ่มเมื่อ 05-2026)

172.217.120.128/26 (เพิ่มเมื่อ 05-2026)

2001:4860:1037::/48 (เพิ่มเมื่อ 05-2026)

2001:4860:1038::/48 (เพิ่มเมื่อ 05-2026)

2001:4860:103a::/48 (เพิ่มเมื่อ 05-2026)

อุปกรณ์เสมือน 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)