การแก้ปัญหา Test Lab คำถามที่พบบ่อย

หน้านี้ให้ความช่วยเหลือในการแก้ปัญหาและคำตอบสำหรับคำถามที่พบบ่อยเกี่ยวกับการทดสอบด้วย Firebase Test Lab นอกจากนี้ เรายังบันทึกปัญหาที่ทราบไว้ด้วย หากไม่พบสิ่งที่ต้องการหรือต้องการความช่วยเหลือเพิ่มเติม โปรดเข้าร่วมแชแนล #test-lab ใน Firebase Slack หรือติดต่อทีมสนับสนุนของ Firebase

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

การทดสอบที่ดำเนินการในระดับความจุของอุปกรณ์ระดับใดก็ตามอาจใช้เวลานานขึ้นเนื่องจากปัจจัยต่อไปนี้

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

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

ผลการทดสอบที่สรุปไม่ได้มักเกิดขึ้นเนื่องจากการทดสอบถูกยกเลิกหรือข้อผิดพลาดด้านโครงสร้างพื้นฐาน

ข้อผิดพลาดเกี่ยวกับโครงสร้างพื้นฐานเกิดจากปัญหาTest Labภายใน เช่น ข้อผิดพลาดเกี่ยวกับเครือข่ายหรือลักษณะการทํางานของอุปกรณ์ที่ไม่คาดคิด Test Lab หยุดการเรียกใช้การทดสอบภายในซึ่งก่อให้เกิดข้อผิดพลาดด้านโครงสร้างพื้นฐานหลายครั้งก่อนที่จะรายงานผลลัพธ์ที่ไม่แน่ใจ อย่างไรก็ตาม คุณสามารถปิดใช้การลองอีกครั้งเหล่านี้ได้โดยใช้ failFast

หากต้องการระบุสาเหตุของข้อผิดพลาด ให้ทำตามขั้นตอนต่อไปนี้

  1. ตรวจสอบการหยุดทำงานที่ทราบในแดชบอร์ดสถานะ Firebase
  2. ทดสอบอีกครั้งใน Test Lab เพื่อยืนยันว่าสามารถทําให้เกิดข้อบกพร่องซ้ำได้

  3. ลองทำการทดสอบในอุปกรณ์หรือประเภทอุปกรณ์อื่น (หากมี)

หากยังพบปัญหาอยู่ โปรดติดต่อทีม Test Lab ในช่อง#test-lab บน Firebase Slack

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

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

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

เวลาการเรียกเก็บเงิน

หลังจากการดําเนินการทดสอบเสร็จสิ้น ระบบจะดาวน์โหลดอาร์ติแฟกต์การทดสอบจากอุปกรณ์ ประมวลผล และอัปโหลดไปยัง Cloud Storage ระยะเวลาของขั้นตอนนี้อาจขึ้นอยู่กับจํานวนและความของอาร์ติแฟกต์

คำถามที่พบบ่อย

Firebase Test Lab มีโควต้าที่ไม่มีค่าใช้จ่ายสำหรับการทดสอบบนอุปกรณ์และการใช้ Cloud API โปรดทราบว่าโควต้าการทดสอบจะใช้แพ็กเกจราคา Firebase มาตรฐาน ส่วนโควต้า Cloud API จะไม่ใช้

  • โควต้าการทดสอบ

    โควต้าการทดสอบจะกำหนดโดยจำนวนอุปกรณ์ที่ใช้ทำการทดสอบ แพ็กเกจ Firebase Spark มีโควต้าการทดสอบแบบคงที่โดยไม่มีค่าใช้จ่ายสำหรับผู้ใช้ สำหรับแพ็กเกจ Blaze โควต้าอาจเพิ่มขึ้นหากการใช้งาน Google Cloud เพิ่มขึ้นเมื่อเวลาผ่านไป หากใช้โควต้าการทดสอบครบแล้ว โปรดรอจนถึงวันถัดไปหรืออัปเกรดเป็นแพ็กเกจ Blaze หากคุณใช้แพ็กเกจ Spark อยู่ หากใช้แพ็กเกจ Blaze อยู่แล้ว คุณสามารถขอเพิ่มโควต้าได้ ดูข้อมูลเพิ่มเติมได้ที่โควต้าการทดสอบ

    คุณสามารถตรวจสอบการใช้โควต้าการทดสอบได้ในคอนโซล Google Cloud

  • โควต้า Cloud Testing API

    Cloud Testing API มีขีดจํากัดโควต้า 2 รายการ ได้แก่ คําขอต่อวันต่อโปรเจ็กต์และคําขอต่อทุกๆ 100 วินาทีต่อโปรเจ็กต์ คุณสามารถตรวจสอบการใช้งานได้ในคอนโซล Google Cloud

  • โควต้า Cloud Tool Results API

    Cloud Tool Results API มีขีดจํากัดโควต้า 2 รายการ ได้แก่ การค้นหาต่อวันต่อโปรเจ็กต์ และการค้นหาทุกๆ 100 วินาทีต่อโปรเจ็กต์ คุณสามารถตรวจสอบการใช้งานได้ในคอนโซล Google Cloud

    ดูข้อมูลเพิ่มเติมเกี่ยวกับขีดจํากัดของ API ได้ที่โควต้า Cloud API สําหรับ Test Lab หากคุณใช้โควต้า API ถึงขีดจํากัดแล้ว ให้ทำดังนี้

    • ส่งคำขอโควต้าที่สูงขึ้นโดยแก้ไขโควต้าในคอนโซล Google Cloud โดยตรง (โปรดทราบว่าขีดจำกัดส่วนใหญ่จะตั้งค่าเป็นสูงสุดโดยค่าเริ่มต้น) หรือ

    • ขอโควต้า API ที่สูงขึ้นโดยกรอกแบบฟอร์มคำขอในGoogle Cloudคอนโซล หรือติดต่อทีมสนับสนุน Firebase

จากแบ็กเอนด์ คุณสามารถระบุได้ว่าการเข้าชมมาจากอุปกรณ์ทดสอบที่โฮสต์โดย Firebase หรือไม่โดยตรวจสอบที่อยู่ IP ต้นทางกับช่วง IP

Test Lab ไม่ทำงานร่วมกับ VPC-SC ซึ่งบล็อกการคัดลอกแอปและรายการอื่นๆ ที่ใช้ทดสอบระหว่างพื้นที่เก็บข้อมูลภายในของ Test Lab กับที่เก็บข้อมูลผลลัพธ์ของผู้ใช้

หากต้องการตรวจหาลักษณะการทำงานที่ไม่เสถียรในการทดสอบ เราขอแนะนำให้ใช้ตัวเลือก --num-flaky-test-attempts ระบบจะเรียกเก็บเงินหรือนับการเรียกใช้ Deflake ซ้ำในโควต้ารายวันเช่นเดียวกับการเรียกใช้การทดสอบตามปกติ

โปรดทราบข้อมูลต่อไปนี้

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

แม้ว่าบางรายการเหล่านี้จะอยู่ในแผนของเรา แต่ปัจจุบันเราไม่สามารถให้คำมั่นสัญญาว่าจะรองรับแพลตฟอร์มการทดสอบและการพัฒนาแอปเหล่านี้

ข้อมูลโดยละเอียดของอุปกรณ์จะพร้อมใช้งานผ่าน API และเข้าถึงได้จากไคลเอ็นต์ gcloud โดยใช้คำสั่ง describe

gcloud firebase test ios models describe MODEL

Test Lab สำหรับ iOS ไม่รองรับการแยกกลุ่มโดยค่าเริ่มต้น แต่คุณสามารถใช้ไคลเอ็นต์ Flank เพื่อแบ่งกลุ่มกรณีทดสอบ iOS ได้

ซึ่งจะทํางานโดยการตั้งค่าคีย์และค่า OnlyTestIdentifiers ในไฟล์ .xctestrun ดูรายละเอียดเพิ่มเติมได้ในหน้า man สำหรับ xcodebuild.xctestrun

สำหรับ iOS 18 ขึ้นไป เราจะไม่รองรับวิดีโอในผลการค้นหา

ปัญหาที่ทราบ

การทดสอบด้วยโรโบทไม่สามารถข้ามหน้าจอลงชื่อเข้าใช้ที่กําหนดให้ผู้ใช้ดําเนินการเพิ่มเติมนอกเหนือจากการป้อนข้อมูลเข้าสู่ระบบเพื่อลงชื่อเข้าใช้ เช่น การทํา CAPTCHA ให้เสร็จสมบูรณ์

การทดสอบ Robo สําหรับ iOS ขึ้นไป (เบต้า) ไม่รองรับการลงชื่อเข้าใช้ด้วยบัญชี Google โดยอัตโนมัติ