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

Firebase Test Lab ให้คุณทดสอบคุณภาพแอปกับอุปกรณ์และการกำหนดค่าต่างๆ คู่มือนี้จะแสดงภาพรวมของแนวคิดหลักของ Test Lab, ข้อเสนอสำหรับ iOS และวิธีการเริ่มต้นการทดสอบ

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

แนวคิดและข้อกำหนดสำคัญ

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

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

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

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

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

  • XCTest (รวมถึง XCUITests): การทดสอบ 1 หน่วยที่คุณเขียนโดยใช้เฟรมเวิร์ก XCTest ไปที่ Create an XCTest เพื่อดูวิธีการแก้ไข XCTest เพื่อเรียกใช้ด้วย Test Lab

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

    • เขียนการทดสอบแบบเนทีฟใน Game Engine ของคุณ

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

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

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

ขั้นตอนที่ 2: เลือกเครื่องมือที่จะทำการทดสอบ

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

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

  • อินเทอร์เฟซบรรทัดคำสั่ง gcloud (CLI) ช่วยให้คุณเรียกใช้การทดสอบจากบรรทัดคำสั่งแบบอินเทอร์แอกทีฟได้ ทั้งยังเหมาะอย่างยิ่งสำหรับการเขียนสคริปต์ในฐานะส่วนหนึ่งของกระบวนการสร้างและการทดสอบอัตโนมัติ โปรดดูวิธีการใช้เครื่องมือนี้ในทดสอบด้วย 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 ต่อไปนี้ นอกจากนี้ คุณยังเข้าถึงรายการนี้ได้โดยใช้ gcloud beta firebase test ip-blocks list คำสั่ง ใน gcloud CLI รายการนี้จะอัปเดต โดยเฉลี่ยปีละครั้ง

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

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)

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

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