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