เริ่มต้นใช้งาน Firebase Test Lab สำหรับ iOS

Firebase Test Lab ช่วยให้คุณทดสอบคุณภาพแอปในอุปกรณ์และ การกำหนดค่าที่หลากหลาย คู่มือนี้จะแสดงภาพรวมของ Test Lab's แนวคิดหลัก, ข้อเสนอ 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: เลือกเครื่องมือที่จะใช้เรียกใช้การทดสอบ

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

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

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

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

ขั้นตอนที่ 3: ระบุอุปกรณ์ทดสอบ

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

ขั้นตอนที่ 4: ตรวจสอบผลการทดสอบ

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

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

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

ดูรายละเอียดเพิ่มเติมได้ที่ วิเคราะห์ผลลัพธ์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 ต่อไปนี้ นอกจากนี้ คุณยังเข้าถึงรายการนี้ได้โดยใช้ 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)