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 Console
โควต้า Cloud Testing API
Cloud Testing API มาพร้อมโควต้า 2 รายการ ได้แก่ คำขอต่อวันต่อโปรเจ็กต์ และคำขอต่อทุก 100 วินาทีต่อโปรเจ็กต์ คุณตรวจสอบการใช้งานได้ในคอนโซล Google Cloud
โควต้า API ผลลัพธ์ของเครื่องมือระบบคลาวด์
API ผลลัพธ์ของเครื่องมือระบบคลาวด์มาพร้อมกับขีดจำกัดโควต้า 2 ส่วน ได้แก่ คำค้นหาต่อวันต่อโปรเจ็กต์ และคำค้นหาต่อทุก 100 วินาทีต่อโปรเจ็กต์ คุณตรวจสอบการใช้งานได้ในคอนโซล Google Cloud
โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับขีดจำกัดของ API ในโควต้า Cloud API สำหรับ Test Lab หากคุณมี API ถึงโควต้าแล้ว ให้ทำดังนี้
ส่งคำขอสำหรับโควต้าที่สูงขึ้นโดยแก้ไขโควต้าของคุณ โดยตรงในคอนโซล Google Cloud (โปรดทราบว่าขีดจำกัดส่วนใหญ่จะกำหนดไว้เป็นค่าสูงสุดโดยค่าเริ่มต้น) หรือ
ขอโควต้า API ที่สูงขึ้นโดยกรอกแบบฟอร์มคำขอใน
Google Cloud Console หรือติดต่อ
ทีมสนับสนุนของ 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 ได้
หมายเหตุ: การใช้การชาร์ด iOS ด้านข้างจะสร้างเมทริกซ์ทดสอบแยกต่างหากสำหรับชาร์ดแต่ละรายการ
ซึ่งทำงานโดยการตั้งค่าคีย์และค่า OnlyTestIdentifiers
ในไฟล์ .xctestrun
ดูหน้า man
สำหรับ xcodebuild.xctestrun
สำหรับรายละเอียดเพิ่มเติม
ปัญหาที่ทราบ
Captcha สำหรับการลงชื่อเข้าใช้
การทดสอบ Robo ไม่สามารถข้ามหน้าจอลงชื่อเข้าใช้ที่กำหนดให้ผู้ใช้ต้องดำเนินการเพิ่มเติมนอกเหนือจากการป้อนข้อมูลเข้าสู่ระบบเพื่อลงชื่อเข้าใช้ เช่น การป้อนข้อมูล CAPTCHA
การรองรับเฟรมเวิร์ก UI
การทดสอบ Robo ทำงานได้ดีที่สุดกับแอปที่ใช้องค์ประกอบ UI จากเฟรมเวิร์ก UI ของ Android (รวมถึงออบเจ็กต์ View
, ViewGroup
และ WebView
) หากคุณใช้การทดสอบ Robo เพื่อฝึกแอปที่ใช้เฟรมเวิร์ก UI อื่นๆ รวมถึงแอปที่ใช้เครื่องมือเกม Unity การทดสอบอาจออกโดยไม่สำรวจนอกหน้าจอแรก