เริ่มการทดสอบสำหรับ 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 การทดสอบนี้ช่วยให้คุณยืนยันสถานะของแอปได้อย่างชัดเจนเพื่อตรวจสอบฟังก์ชันการทำงานที่ถูกต้องโดยใช้ AndroidJUnitRunnerAPIs

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

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

    • เขียนการทดสอบที่ทำงานร่วมกับเครื่องมือสร้างเกมของคุณ

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

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

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

เครื่องมือที่ใช้ทดสอบ

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

  • แนะนำสำหรับผู้ใช้ครั้งแรก: คอนโซล 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 มักจะใช้ Google Play Services SDK เวอร์ชันล่าสุด แต่อุปกรณ์บางรุ่นอาจต้องใช้เวลา 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 คำสั่ง ใน 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)