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

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

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

แนวคิดหลัก

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

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

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

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

ประเภทการทดสอบที่มีจำหน่าย

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

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

  • การทดสอบ 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

เมื่อคุณเริ่มการทดสอบจาก Android Studio คุณยังสามารถตรวจสอบผลการทดสอบจากภายในสภาพแวดล้อมการพัฒนาของคุณได้

การล้างข้อมูลอุปกรณ์

Google ให้ความสำคัญกับความปลอดภัยของข้อมูลแอปของคุณเป็นอย่างมาก เราปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดตามมาตรฐานอุตสาหกรรมเพื่อลบข้อมูลแอปและรีเซ็ตการตั้งค่าระบบสำหรับอุปกรณ์จริงหลังจากการทดสอบทุกครั้ง เพื่อให้แน่ใจว่าอุปกรณ์เหล่านั้นพร้อมที่จะทำการทดสอบใหม่ สำหรับอุปกรณ์ที่เราแฟลชด้วยอิมเมจการกู้คืนที่กำหนดเองได้ เราจะก้าวไปอีกขั้นด้วยการแฟลชอุปกรณ์เหล่านี้ระหว่างการทดสอบ

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


ห้องปฏิบัติการทดสอบและบริการ Google Play

อุปกรณ์ Test Lab มักจะทำงานบน SDK บริการ Google Play เวอร์ชันล่าสุด แต่บางเครื่องอาจต้องใช้เวลาสองสามวันในการอัปเดตหลังจากเปิดตัว 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 ใน gcloud CLI รายการมีการปรับปรุงเป็นระยะ (ปีละครั้งโดยเฉลี่ย)

ประเภทแพลตฟอร์มและอุปกรณ์ บล็อกที่อยู่ IP CIDR
อุปกรณ์ทางกายภาพของ Android และ iOS

108.177.6.0/23

70.32.147.112/28 (เพิ่ม 03-2020)

74.125.122.32/29 (เพิ่ม 04-2020)

108.177.29.80/28 (เพิ่ม 04-2020)

216.239.44.24/29 (เพิ่ม 04-2020)

อุปกรณ์เสมือน Android

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)

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)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29