เริ่มต้นการทดสอบ Android ด้วย Firebase Test Lab

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

สำหรับข้อมูลเกี่ยวกับโควต้า Test Lab และแผนการกำหนดราคา โปรดดูที่ การใช้งาน โควต้า และราคา

แนวคิดหลัก

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

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

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

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

ประเภทการทดสอบที่มีอยู่

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

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

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

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

    • เขียนการทดสอบแบบเนทีฟสำหรับเอ็นจิ้นเกมของคุณ

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

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

    ดู เรียกใช้การทดสอบ Game Loop สำหรับคำแนะนำในการรันการทดสอบนี้ด้วย Test Lab

เครื่องมือในการทำการทดสอบของคุณ

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

  • แนะนำสำหรับผู้ใช้ครั้งแรก : คอนโซล 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 ใน CLI ของ gcloud รายการจะอัปเดตโดยเฉลี่ยปีละครั้ง

แพลตฟอร์มและประเภทอุปกรณ์ บล็อกที่อยู่ 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)

อุปกรณ์เสมือน 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-block ของอุปกรณ์อีกต่อไป

74.125.122.32/29 (ลบออกเมื่อ 02-2022)

216.239.44.24/29 (ลบออกเมื่อ 02-2022)