Firebase Test Lab ช่วยให้คุณทดสอบคุณภาพของแอปในอุปกรณ์และการกำหนดค่าต่างๆ ได้ คู่มือนี้จะแสดงภาพรวมของแนวคิดหลักของ Test Lab ข้อเสนอสำหรับ iOS และวิธีการเริ่มต้นทดสอบ
ดูข้อมูลเกี่ยวกับTest Labโควต้าและแพ็กเกจราคาได้ที่ การใช้งาน โควต้า และราคา
แนวคิดและคำศัพท์หลัก
เมื่อคุณเรียกใช้การทดสอบหรือชุดกรณีทดสอบกับอุปกรณ์และการกำหนดค่าที่คุณเลือก Test Lab จะเรียกใช้การทดสอบกับแอปของคุณเป็นชุด จากนั้นจะแสดงผลลัพธ์เป็นเมทริกซ์การทดสอบ
อุปกรณ์ × การทดสอบ = เมทริกซ์การทดสอบ
- อุปกรณ์
- อุปกรณ์จริงหรืออุปกรณ์เสมือน (Android เท่านั้น) ที่คุณใช้ทดสอบ เช่น โทรศัพท์ แท็บเล็ต หรืออุปกรณ์ที่สวมใส่ได้ ระบบจะระบุอุปกรณ์ในเมทริกซ์การทดสอบตาม รุ่นอุปกรณ์, เวอร์ชันของระบบปฏิบัติการ, การวางแนวหน้าจอ และภาษา (หรือที่เรียกว่า การตั้งค่าภูมิศาสตร์และภาษา)
- การทดสอบ การดำเนินการทดสอบ
- การทดสอบ (หรือชุดกรณีทดสอบ) ที่จะเรียกใช้ในอุปกรณ์ คุณสามารถเรียกใช้การทดสอบ 1 รายการต่ออุปกรณ์ หรือจะเลือกแบ่งการทดสอบและเรียกใช้กรณีทดสอบในอุปกรณ์ต่างๆ ก็ได้
- เมทริกซ์ทดสอบ
- มีสถานะและผลการทดสอบสำหรับการดำเนินการทดสอบ หากการทดสอบใดๆ ในเมทริกซ์ไม่สำเร็จ เมทริกซ์ทั้งหมดจะไม่สำเร็จ
ขั้นตอนที่ 1: เตรียมการทดสอบสำหรับการอัปโหลดไปยัง Test Lab
คุณสามารถทำการทดสอบต่อไปนี้ด้วย Test Lab โปรดทราบว่าการทดสอบทุกประเภทจะ ทำงานได้สูงสุด 45 นาทีในอุปกรณ์จริง และข้อยกเว้นที่ไม่ได้ ตรวจพบจะทำให้การทดสอบล้มเหลว
XCTest (รวมถึง XCUITests): การทดสอบหน่วยที่คุณเขียนโดยใช้เฟรมเวิร์ก XCTest ไปที่สร้าง XCTest เพื่อดูวิธีการแก้ไข XCTest ให้ทำงานกับ Test Lab
การทดสอบ Game Loop: การทดสอบที่ใช้ "โหมดสาธิต" เพื่อ จำลองการกระทำของผู้เล่นในแอปเกม ซึ่งเป็นวิธีที่รวดเร็วและปรับขนาดได้ ในการยืนยันว่าเกมของคุณทำงานได้ดีสำหรับผู้ใช้ เมื่อเลือกทำการทดสอบ Game Loop คุณจะทำสิ่งต่อไปนี้ได้
เขียนการทดสอบที่อยู่ในเอนจินเกม
หลีกเลี่ยงการเขียนโค้ดเดียวกันสำหรับ UI หรือเฟรมเวิร์กการทดสอบที่แตกต่างกัน
สร้างลูปหลายลูปเพื่อเรียกใช้ในการทดสอบครั้งเดียว (ไม่บังคับ) นอกจากนี้ คุณยังจัดระเบียบลูปได้โดยใช้ป้ายกำกับเพื่อให้ติดตามและเรียกใช้ลูปที่เฉพาะเจาะจงอีกครั้งได้
ไปที่ทำการทดสอบ Game Loop เพื่อดูวิธีการ ทำการทดสอบใน Test Lab
ขั้นตอนที่ 2: เลือกเครื่องมือที่จะใช้ทดสอบ
คุณเลือกใช้เครื่องมือต่อไปนี้เพื่อทำการทดสอบได้
Firebase คอนโซลช่วยให้คุณอัปโหลดแอปและเริ่มการทดสอบได้จากทุกที่ ดูวิธีการใช้เครื่องมือนี้ได้ที่ ทดสอบด้วยFirebaseคอนโซล
อินเทอร์เฟซบรรทัดคำสั่ง (CLI) ของ gcloud ช่วยให้คุณเรียกใช้การทดสอบ จากบรรทัดคำสั่งแบบอินเทอร์แอกทีฟได้ และยังเหมาะสำหรับการเขียนสคริปต์ ซึ่งเป็นส่วนหนึ่งของกระบวนการสร้างและทดสอบอัตโนมัติด้วย ดูวิธีการใช้เครื่องมือนี้ได้ที่ทดสอบด้วย gcloud CLI
ก่อนที่จะทดสอบในอุปกรณ์จริง ให้เรียกใช้การทดสอบในเครื่องบนโปรแกรมจำลองเพื่อให้แน่ใจว่าการทดสอบทำงานตามที่ต้องการ ดูวิธีการได้ที่หัวข้อทดสอบในเครื่อง
ขั้นตอนที่ 3: ระบุอุปกรณ์ทดสอบ
Test Lab ช่วยให้คุณทำการทดสอบกับแอปในอุปกรณ์และรุ่น iOS ได้หลากหลาย ซึ่งโฮสต์อยู่ในศูนย์ข้อมูลของ Google ดูข้อมูลเพิ่มเติมได้ที่ อุปกรณ์ที่พร้อมใช้งาน
ขั้นตอนที่ 4: ตรวจสอบผลการทดสอบ
ไม่ว่าคุณจะเริ่มการทดสอบด้วยวิธีใด Test Lab จะจัดการผลการทดสอบทั้งหมดของคุณและคุณจะดูผลการทดสอบทางออนไลน์ได้
ระบบจะจัดเก็บสรุปผลการทดสอบโดยอัตโนมัติและดูได้ในคอนโซล Firebase โดยจะมีข้อมูลที่เกี่ยวข้องมากที่สุดสำหรับการทดสอบของคุณ ซึ่งรวมถึงวิดีโอเฉพาะกรณีทดสอบ ภาพหน้าจอ จำนวนการทดสอบที่ผ่าน ไม่ผ่าน หรือได้ผลลัพธ์ที่ไม่เสถียร และ อื่นๆ
ผลการทดสอบดิบประกอบด้วยบันทึกการทดสอบและรายละเอียดความล้มเหลวของแอป และจะจัดเก็บไว้ในที่เก็บข้อมูล Google Cloud โดยอัตโนมัติ หากระบุที่เก็บข้อมูล คุณจะต้อง รับผิดชอบค่าใช้จ่ายของพื้นที่เก็บข้อมูล หากไม่ได้ระบุที่เก็บข้อมูล Test Lab จะสร้างที่เก็บข้อมูลให้คุณโดยไม่มีค่าใช้จ่าย
ดูรายละเอียดเพิ่มเติมได้ที่วิเคราะห์ผลลัพธ์ของ Firebase Test Lab
การล้างข้อมูลอุปกรณ์
Google ให้ความสำคัญกับความปลอดภัยของข้อมูลแอปของคุณเป็นอย่างมาก เราปฏิบัติตามแนวทางปฏิบัติแนะนำที่เป็นมาตรฐานอุตสาหกรรมเพื่อนำข้อมูลแอปออกและรีเซ็ตการตั้งค่าระบบ สำหรับอุปกรณ์จริงหลังจากการทดสอบแต่ละครั้งเพื่อให้มั่นใจว่าอุปกรณ์พร้อมที่จะรันการทดสอบใหม่ สำหรับอุปกรณ์ที่เราสามารถแฟลชด้วยอิมเมจการกู้คืนที่กำหนดเอง เราจะดำเนินการอีกขั้นด้วยการแฟลชอุปกรณ์เหล่านี้ระหว่างการทดสอบ
สำหรับอุปกรณ์เสมือนที่ Test Lab ใช้ ระบบจะลบอินสแตนซ์ของอุปกรณ์หลังจากที่ใช้แล้ว เพื่อให้การทดสอบแต่ละครั้งใช้อินสแตนซ์ของอุปกรณ์เสมือนใหม่
การอนุญาตให้อุปกรณ์ Test Lab เข้าถึงเซิร์ฟเวอร์แบ็กเอนด์ส่วนตัว
แอปบนอุปกรณ์เคลื่อนที่บางแอปต้องสื่อสารกับบริการแบ็กเอนด์ส่วนตัวเพื่อให้ทำงานได้อย่างถูกต้องในระหว่างการทดสอบ หากเซิร์ฟเวอร์แบ็กเอนด์ได้รับการปกป้องโดยกฎไฟร์วอลล์ คุณสามารถอนุญาตการเข้าถึงอุปกรณ์จริงและอุปกรณ์เสมือนของ Test Lab ได้โดย ใช้บล็อกที่อยู่ IP ด้านล่างเพื่อเปิดเส้นทางผ่านไฟร์วอลล์
โฆษณาบนอุปกรณ์เคลื่อนที่
Test Lab มีโครงสร้างพื้นฐานที่ปรับขนาดได้ซึ่งจะทำให้การทดสอบแอปเป็นไปโดยอัตโนมัติ และ น่าเสียดายที่แอปที่เป็นอันตรายซึ่งออกแบบมาเพื่อ สร้างรายได้จากโฆษณาที่เป็นการฉ้อโกงอาจใช้ความสามารถนี้ในทางที่ผิด
วิธีลดปัญหานี้
หากคุณใช้หรือทำงานร่วมกับผู้ให้บริการโฆษณาดิจิทัลบุคคลที่สาม (เช่น เครือข่ายโฆษณาหรือแพลตฟอร์มฝั่งดีมานด์) เราขอแนะนำให้ใช้โฆษณาทดสอบแทนโฆษณาจริงในระหว่างการพัฒนา และการทดสอบแอป
หากต้องใช้โฆษณาจริงในการทดสอบ ให้แจ้งผู้ให้บริการโฆษณาดิจิทัล ที่คุณทำงานด้วยเพื่อกรองรายได้และการเข้าชมที่เกี่ยวข้องทั้งหมด ซึ่งเกิดจาก Test Lab โดยใช้ช่วงที่อยู่ IP ด้านล่าง คุณไม่จำเป็นต้องแจ้งผู้ให้บริการโฆษณาที่เป็นของ Google เนื่องจาก Test Lab จะจัดการให้คุณ
ที่อยู่ IP ที่อุปกรณ์ Test Lab ใช้
การรับส่งข้อมูลเครือข่ายทั้งหมดที่สร้างโดยTest Labอุปกรณ์จะมาจากบล็อกที่อยู่ IP ต่อไปนี้
นอกจากนี้ คุณยังเข้าถึงรายการนี้ได้โดยใช้คำสั่งใน CLI ของ gcloud
gcloud beta firebase test ip-blocks list
โดยรายการจะอัปเดตปีละครั้งโดยเฉลี่ย
| แพลตฟอร์มและประเภทอุปกรณ์ | ช่วงที่อยู่ 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 (เพิ่มเมื่อเดือนพฤศจิกายน 2019) 34.69.234.64/29 (เพิ่มเมื่อเดือนพฤศจิกายน 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 (เพิ่มเมื่อเดือนกรกฎาคม 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) |