iOS
Android
หน้านี้ให้ความช่วยเหลือในการแก้ปัญหาและคำตอบสำหรับคำถามที่พบบ่อยเกี่ยวกับการทดสอบด้วย Firebase Test Lab นอกจากนี้ เรายังบันทึกปัญหาที่ทราบไว้ด้วย หากไม่พบสิ่งที่ต้องการหรือต้องการความช่วยเหลือเพิ่มเติม โปรดเข้าร่วมแชแนล #test-lab ใน Firebase Slack หรือติดต่อทีมสนับสนุนของ Firebase
การแก้ปัญหา
เหตุใดการทดสอบจึงใช้เวลานาน
เมื่อเลือกอุปกรณ์ที่มีระดับความจุสูงในTest Lab แคตตาล็อก การทดสอบอาจเริ่มต้นเร็วขึ้น เมื่ออุปกรณ์มีความจุต่ำ การทดสอบอาจใช้เวลานานขึ้น หากจำนวนการทดสอบที่เรียกใช้มากกว่าความจุของอุปกรณ์ที่เลือก การทดสอบอาจใช้เวลานานขึ้น
การทดสอบที่ดำเนินการในระดับความจุของอุปกรณ์ระดับใดก็ตามอาจใช้เวลานานขึ้นเนื่องจากปัจจัยต่อไปนี้
การเข้าชม ซึ่งส่งผลต่อความพร้อมใช้งานของอุปกรณ์และความเร็วในการทดสอบ
อุปกรณ์หรือโครงสร้างพื้นฐานขัดข้อง ซึ่งอาจเกิดขึ้นได้ทุกเมื่อ หากต้องการตรวจสอบว่ามีโครงสร้างพื้นฐานที่รายงานสำหรับ Test Lab หรือไม่ ให้ดูแดชบอร์ดสถานะ Firebase
ดูข้อมูลเพิ่มเติมเกี่ยวกับความจุของอุปกรณ์ใน Test Lab ได้ที่ข้อมูลความจุของอุปกรณ์สำหรับ Android และ iOS
เหตุใดฉันจึงได้รับผลการทดสอบที่ไม่มีผลสรุปที่แน่ชัด
ผลการทดสอบที่สรุปไม่ได้มักเกิดขึ้นเนื่องจากการทดสอบถูกยกเลิกหรือข้อผิดพลาดด้านโครงสร้างพื้นฐาน
ข้อผิดพลาดเกี่ยวกับโครงสร้างพื้นฐานเกิดจากปัญหาTest Lab ภายใน เช่น ข้อผิดพลาดเกี่ยวกับเครือข่ายหรือลักษณะการทํางานของอุปกรณ์ที่ไม่คาดคิด Test Lab หยุดการเรียกใช้การทดสอบภายในซึ่งก่อให้เกิดข้อผิดพลาดด้านโครงสร้างพื้นฐานหลายครั้งก่อนที่จะรายงานผลลัพธ์ที่ไม่แน่ใจ อย่างไรก็ตาม คุณสามารถปิดใช้การลองอีกครั้งเหล่านี้ได้โดยใช้ failFast
หากต้องการระบุสาเหตุของข้อผิดพลาด ให้ทำตามขั้นตอนต่อไปนี้
ตรวจสอบการหยุดทำงานที่ทราบในแดชบอร์ดสถานะ Firebase
ทดสอบอีกครั้งใน Test Lab เพื่อยืนยันว่าปัญหาเกิดขึ้นซ้ำได้
หมายเหตุ: Test Lab จะไม่เรียกเก็บเงินจากคุณสำหรับข้อผิดพลาดด้านโครงสร้างพื้นฐาน
ลองทำการทดสอบในอุปกรณ์หรือประเภทอุปกรณ์อื่น (หากมี)
หากยังพบปัญหาอยู่ โปรดติดต่อทีม Test Lab ในช่อง#test-lab บน Firebase Slack
เหตุใดการแยกข้อมูลจึงทําให้การทดสอบใช้เวลานานขึ้น
การจัดกลุ่มอาจทําให้การทดสอบใช้เวลานานขึ้นเมื่อจํานวนกลุ่มที่คุณระบุมากกว่าจํานวนอุปกรณ์ที่ใช้ได้ใน Test Lab หากต้องการหลีกเลี่ยงสถานการณ์นี้ ให้ลองเปลี่ยนไปใช้อุปกรณ์อื่น ดูข้อมูลเพิ่มเติมเกี่ยวกับการเลือกอุปกรณ์อื่นได้ที่
ความจุของอุปกรณ์
ทำไมการทดสอบจึงใช้เวลานาน
เมื่อคุณส่งคำขอทดสอบ ระบบจะตรวจสอบแอป ลงชื่อแอปอีกครั้ง และอื่นๆ ก่อนเพื่อเตรียมพร้อมสำหรับการทดสอบบนอุปกรณ์ โดยปกติแล้วขั้นตอนนี้จะเสร็จสมบูรณ์ภายในเวลาไม่ถึง 2-3 วินาที แต่อาจได้รับผลกระทบจากปัจจัยต่างๆ เช่น ขนาดของแอป
หลังจากเตรียมแอปแล้ว ระบบจะกำหนดเวลาการเรียกใช้การทดสอบและจัดคิวไว้จนกว่าอุปกรณ์จะพร้อมเรียกใช้ สถานะของเมทริกซ์จะยังคงเป็น "รอดําเนินการ" จนกว่าการเรียกใช้การทดสอบทั้งหมดจะเสร็จสมบูรณ์ (ไม่ว่าจะอยู่ในคิวหรือกําลังทํางานอยู่ก็ตาม)
หมายเหตุ: เวลาทดสอบที่รออุปกรณ์ว่างจะไม่นับรวมใน เวลาการเรียกเก็บเงิน
เหตุใดการทดสอบจึงใช้เวลานาน
หลังจากการดําเนินการทดสอบเสร็จสิ้น ระบบจะดาวน์โหลดอาร์ติแฟกต์การทดสอบจากอุปกรณ์ ประมวลผล และอัปโหลดไปยัง Cloud Storage ระยะเวลาของขั้นตอนนี้อาจขึ้นอยู่กับจํานวนและความใหญ่ของรายการ
คำถามที่พบบ่อย
โควต้าที่ไม่มีค่าใช้จ่ายสำหรับ Test Lab คืออะไร ฉันควรทำอย่างไรหากใช้สิทธิ์หมด
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
ฉันจะทราบได้อย่างไรว่าการเข้าชมที่เข้าถึงแบ็กเอนด์ของฉันมาจาก Test Lab
จากแบ็กเอนด์ คุณสามารถระบุได้ว่าการเข้าชมมาจากอุปกรณ์ทดสอบที่โฮสต์โดย Firebase หรือไม่โดยตรวจสอบที่อยู่ IP ต้นทางกับช่วง IP
Test Lab ใช้กับ VPC-SC ได้ไหม
Test Lab ไม่ทำงานร่วมกับ VPC-SC ซึ่งบล็อกการคัดลอกแอปและรายการอื่นๆ ที่ใช้ทดสอบระหว่างพื้นที่เก็บข้อมูลภายในของ Test Lab กับที่เก็บข้อมูลผลลัพธ์ของผู้ใช้
ฉันจะตรวจหาการทดสอบที่ไม่เสถียรใน Test Lab ได้อย่างไร
หากต้องการตรวจหาลักษณะการทำงานที่ไม่เสถียรในการทดสอบ เราขอแนะนำให้ใช้ตัวเลือก
--num-flaky-test-attempts
ระบบจะเรียกเก็บเงินหรือนับการเรียกใช้ Deflake ซ้ำในโควต้ารายวันเช่นเดียวกับการเรียกใช้การทดสอบตามปกติ
โปรดทราบข้อมูลต่อไปนี้
การดําเนินการทดสอบทั้งหมดจะทํางานอีกครั้งเมื่อตรวจพบความล้มเหลว ระบบไม่รองรับการลองทดสอบเฉพาะกรอบการทดสอบที่ล้มเหลวอีกครั้ง
ระบบจะกำหนดเวลาให้การดำเนินการลองอีกครั้งเพื่อจัดเก็บข้อมูลแบบไม่แผ่กระจายทำงานพร้อมกัน แต่ไม่ได้รับประกันว่าจะทำงานพร้อมกัน เช่น เมื่อปริมาณการเข้าชมมากกว่าจำนวนอุปกรณ์ที่ใช้ได้
หมายเหตุ: ข้อผิดพลาดเกี่ยวกับโครงสร้างพื้นฐานจะไม่เกี่ยวข้องกับฟีเจอร์การแยกข้อมูล และจะไม่ทริกเกอร์การแยกข้อมูลอีกครั้ง
ฉันจะดูรายละเอียดของอุปกรณ์ เช่น ความละเอียด ได้จากที่ใด
ข้อมูลโดยละเอียดของอุปกรณ์จะพร้อมใช้งานผ่าน API และเข้าถึงได้จากไคลเอ็นต์ gcloud โดยใช้คำสั่ง describe
gcloud firebase test ios models describe MODEL
ฉันจะใช้การแยกกลุ่มกับทดสอบ iOS ได้ไหม
Test Lab สำหรับ iOS ไม่รองรับการแยกกลุ่มโดยค่าเริ่มต้น แต่คุณสามารถใช้ไคลเอ็นต์ Flank เพื่อแบ่งกลุ่มกรณีทดสอบ iOS ได้
หมายเหตุ: การใช้การแยกกลุ่ม Flank iOS จะสร้างเมทริกซ์การทดสอบแยกกันสำหรับแต่ละกลุ่ม
ซึ่งจะทํางานโดยการตั้งค่าคีย์และค่า OnlyTestIdentifiers
ในไฟล์ .xctestrun
ดูรายละเอียดเพิ่มเติมได้ในหน้า man
สำหรับ xcodebuild.xctestrun
ปัญหาที่ทราบ
CAPTCHA การลงชื่อเข้าใช้
การทดสอบด้วยโรโบทไม่สามารถข้ามหน้าจอลงชื่อเข้าใช้ที่กําหนดให้ผู้ใช้ดําเนินการเพิ่มเติมนอกเหนือจากการป้อนข้อมูลเข้าสู่ระบบเพื่อลงชื่อเข้าใช้ เช่น การทํา CAPTCHA ให้เสร็จสมบูรณ์
การรองรับเฟรมเวิร์ก UI
การทดสอบ Robo เหมาะสําหรับแอปที่ใช้องค์ประกอบ UI จากเฟรมเวิร์ก UI ของ Android (รวมถึงออบเจ็กต์ View
, ViewGroup
และ WebView
) หากคุณใช้การทดสอบ Robo เพื่อทดสอบแอปที่ใช้เฟรมเวิร์ก UI อื่นๆ รวมถึงแอปที่ใช้เครื่องมือสร้างเกม Unity การทดสอบอาจออกโดยไม่สำรวจหน้าจอถัดไป