Catch up on everthing we announced at this year's Firebase Summit. Learn more

วิเคราะห์ผลห้องปฏิบัติการทดสอบ Firebase

มีหลายวิธีที่จะใช้ Firebase ห้องปฏิบัติการทดสอบเรียกใช้การทดสอบบนแอป Android ของคุณรวมทั้งที่มี อินเตอร์เฟซบรรทัดคำสั่ง , Android สตูดิโอ ที่ ห้องปฏิบัติการทดสอบ UI ใน Firebase คอนโซลและ การทดสอบ API ไม่ว่าคุณจะเลือกเริ่มการทดสอบอย่างไร ผลลัพธ์จะถูกเก็บไว้ในโปรเจ็กต์ Firebase ที่คุณระบุ คุณสามารถสำรวจผลโดยใช้ ToolResults API นอกเหนือไปจากเครื่องมือใด ๆ ดังกล่าวข้างต้น หน้านี้อธิบายวิธีการทบทวนและวิเคราะห์ผลการทดสอบเหล่านี้

แนวคิดหลัก

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

ในการตรวจสอบผลการทดสอบ ก่อนอื่นคุณต้องเข้าใจแนวคิดสามประการ:

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

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

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

ส่วนต่อไปนี้จะอธิบายวิธีสำรวจผลการทดสอบ

ตีความผลประวัติการทดสอบ

เมื่อคุณนำทางไปยังผลการทดสอบโดยการเลือกห้องปฏิบัติการทดสอบคุณจะเห็นผลของการทดสอบที่คุณได้ทำเพื่อให้ห่างไกล

ประวัติการทดสอบถูกจัดกลุ่มตามแอป เฉพาะเมทริกซ์การทดสอบห้ารายการล่าสุดเท่านั้นที่จะแสดงสำหรับแต่ละแอป ถ้าอื่น ๆ มีคุณสามารถคลิกลิงก์ทั้งหมดเมทริกซ์ที่ด้านล่างของรายการแอปทดสอบเพื่อดูรายการที่สมบูรณ์สำหรับแอปนั้น

ตีความผลการทดสอบเมทริกซ์

เมื่อเริ่มต้นการทดสอบผ่าน ห้องปฏิบัติการทดสอบ UI คุณจะเปลี่ยนเส้นทางไปยังหน้าเว็บที่คุณสามารถดูเมทริกซ์การทดสอบของคุณและคลิกดำเนินการทดสอบที่เฉพาะเจาะจงเพื่อดูผลการทดสอบ Android สตูดิโอ และ คำสั่ง GCloud ระบุ URL สำหรับหน้าผลการทดสอบเมทริกซ์ได้เป็นอย่างดี

ในเมทริกซ์การทดสอบทั่วไป คุณอาจทำการทดสอบในอุปกรณ์ต่างๆ หลายสิบเครื่องหรือมากกว่านั้น การดำเนินการทดสอบแต่ละครั้งอาจมีผลลัพธ์ที่แตกต่างกัน ผลลัพธ์ที่เป็นไปได้สำหรับการดำเนินการทดสอบใดๆ ในเมทริกซ์การทดสอบมีดังนี้:

  • ผ่านไปผ่านการทดสอบ : ไม่พบความล้มเหลว
  • ล้มเหลว การทดสอบล้มเหลว : พบความล้มเหลวอย่างน้อยหนึ่งครั้ง
  • สรุปไม่ได้ผ่านการทดสอบ : ผลการทดสอบไม่สามารถสรุปได้ อาจเป็นเพราะข้อผิดพลาดในห้องปฏิบัติการทดสอบ
  • ข้ามผ่านการทดสอบ : ค่ามิติที่เลือกสำหรับการดำเนินการทดสอบบางรายการในเมทริกซ์ไม่เข้ากัน กรณีนี้เกิดขึ้นเมื่ออุปกรณ์ที่คุณเลือกไม่เข้ากันกับระดับ Android API ที่คุณเลือกอย่างน้อยหนึ่งระดับ

หากต้องการตรวจสอบผลการทดสอบรวมสำหรับเมทริกซ์การทดสอบทั้งหมดสำหรับแอปที่ระบุในโปรเจ็กต์ Firebase ให้คลิกชื่อแอปดังที่แสดงในตัวอย่างต่อไปนี้

ตัวอย่างหน้าผลการทดสอบเมทริกซ์ที่มีการดำเนินการทดสอบเพียงสี่ครั้ง ผลการทดสอบเมทริกซ์

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

ตัวอย่างหน้ารายการเมทริกซ์ทดสอบ รายการเมทริกซ์ทดสอบ

เมทริกซ์การทดสอบสามารถผ่าน ล้มเหลว หรือไม่สามารถสรุปได้ เมทริกซ์การทดสอบจะแสดงว่าล้มเหลวหรือไม่สามารถสรุปได้ หากการดำเนินการทดสอบใดๆ ในเมทริกซ์นั้นล้มเหลวหรือไม่สามารถสรุปได้

ตีความผลการทดสอบโรโบ

หากคุณทำการทดสอบกับ Robo ผลลัพธ์ของคุณจะมีวิดีโอและภาพหน้าจอของ Robo ที่รวบรวมข้อมูล UI ของคุณ นอกเหนือจากตัวชี้วัดการทดสอบปกติ วิดีโอและภาพหน้าจอเหล่านั้นรวมถึงการแสดงภาพการกระทำของ Robo ระหว่างการรวบรวมข้อมูล ซึ่งคล้ายกับฟีเจอร์ "แสดงการสัมผัส" ใน Android คุณสามารถใช้ตัวบ่งชี้เพื่อช่วยให้คุณติดตามความคืบหน้าของ Robo และสร้างข้อบกพร่องที่อาจค้นพบได้

วีดีโอตัวอย่างผลการทดสอบ Robo

ผลการทดสอบโรโบ

ตีความผลลัพธ์จากการทดสอบครั้งเดียว

จากหน้าผลลัพธ์เมทริกซ์ทดสอบ ให้คลิกที่การดำเนินการทดสอบเพื่อดูผลลัพธ์ของการดำเนินการทดสอบนั้นๆ

ตัวอย่างหน้าผลการดำเนินการทดสอบ ผลการดำเนินการทดสอบ

ในหน้านี้ คุณสามารถดูเวลาที่จำเป็นสำหรับการดำเนินการทดสอบแต่ละครั้ง คุณยังดูผลลัพธ์สำหรับกรณีทดสอบเฉพาะที่สอดคล้องกับวิธีการใน APK ทดสอบของคุณ (สำหรับการทดสอบเครื่องมือ) และผลการทดสอบโดยละเอียด รวมถึงบันทึกการทดสอบ ภาพหน้าจอ และวิดีโอ สำหรับ การทดสอบ Robo รายละเอียดผลการทดสอบ ได้แก่ แผนที่กิจกรรมที่มีภาพกราฟิกแสดงเส้นทาง UI ที่กำลังมาเยือนโดยการทดสอบ Robo

ผลการทดสอบเครื่องมือวัดแบบแบ่งพาร์ติชัน

เพื่อช่วยคุณตีความผลการทดสอบโดยใช้เครื่องมือวัด Test Lab จะแยกการทดสอบแต่ละรายการออกเป็นหน้ารายงานโดยละเอียดพร้อมสแต็กเทรซ บันทึก และวิดีโอ คุณลักษณะนี้ใช้งานได้ไม่ว่าคุณจะใช้ Android Orchestrator หรือไม่

ตัวอย่างหน้าผลการทดสอบ ผลการทดสอบ

ตีความผลการช่วยสำหรับการเข้าถึง

การทดสอบ Robo ใช้ Android Accessibility Scanner เพื่อตรวจหาปัญหาการเข้าถึงในแอปของคุณ (โปรดทราบว่าคุณสามารถเรียกใช้การสแกนในอุปกรณ์ของคุณได้) สำหรับคำแนะนำเกี่ยวกับวิธีการตรวจสอบและแปลความหมายผลการเข้าถึงของการทดสอบ Robo ของคุณเข้าชม เริ่มต้นด้วยการเข้าถึงเครื่องสแกนเนอร์

สำหรับข้อมูลทั่วไปเกี่ยวกับวิธีการปรับปรุงการเข้าถึงแอปของคุณแวะไปที่ เอกสารการเข้าถึงนักพัฒนาซอฟต์แวร์ Android

การวัดประสิทธิภาพ

การทดสอบที่ทำงานบนอุปกรณ์จริงยังส่งคืนตัวชี้วัดประสิทธิภาพ:

เมตริก การกำหนดค่าอุปกรณ์ที่จำเป็น
เวลาเริ่มต้นแอป API 19+
การใช้งานซีพียู API 21+
การใช้ความจำ
กิจกรรมเครือข่าย
เฟรมต่อวินาที API 21 + และรวมถึง SurfaceView
ประสิทธิภาพกราฟิก API 23+

รายละเอียดประสิทธิภาพกราฟิก

รายงานประสิทธิภาพกราฟิกประกอบด้วยสถิติเกี่ยวกับเมตริกกราฟิกที่สำคัญหลายประการ:

  • พลาด Vsync: จำนวนของเหตุการณ์ Vsync พลาดหารด้วยจำนวนเฟรมที่ใช้เวลานานกว่า 16 ms ในการแสดงผล
  • แฝงการป้อนข้อมูลสูง: จำนวนของเหตุการณ์การป้อนข้อมูลที่ใช้เวลานานกว่า 24 มิลลิวินาทีหารด้วยจำนวนของเฟรมที่ใช้เวลานานกว่า 16 ms ในการแสดง
  • หัวข้อ UI ช้า: จำนวนครั้งที่หัวข้อ UI ใช้เวลากว่า 8 มิลลิวินาทีที่จะเสร็จสมบูรณ์แล้วหารด้วยจำนวนของเฟรมที่ใช้เวลานานกว่า 16 ms ในการแสดง
  • คำสั่งวาดช้า: จำนวนครั้งว่าการส่งคำสั่งวาดกับ GPU ใช้เวลากว่า 12 มิลลิวินาทีหารด้วยจำนวนของเฟรมที่ใช้เวลานานกว่า 16 ms ในการแสดง
  • อัปโหลดบิตแมปช้า: จำนวนครั้งที่บิตแมปใช้เวลานานกว่า 3.2 มิลลิวินาทีอัปโหลดไปยัง GPU หารด้วยจำนวนของเฟรมที่ใช้เวลานานกว่า 16 ms ในการแสดง
  • Render เวลา: การกระจายของการแสดงผลครั้งสำหรับกรอบของการทดสอบการทำงานในแต่ละ เวลาแสดงผลที่มากกว่า 32 มิลลิวินาทีทำให้ UI ของคุณช้าลงอย่างเห็นได้ชัด เวลาแสดงผลมากกว่า 700+ แสดงว่าเฟรมค้าง Render ข้อมูลที่รวบรวมมาจาก dumpsys graphicsstats

ผลการทดสอบโดยละเอียด

ผลการทดสอบโดยละเอียดจะพร้อมใช้งานเป็นเวลา 90 วันหลังจากที่คุณเรียกใช้การทดสอบและจัดเก็บไว้ในบัคเก็ต Google Cloud Storage (แต่จะมองเห็นได้ในคอนโซล Firebase ด้วย) คุณสามารถดูรายละเอียดผลการทดสอบในถัง Cloud Storage เมื่อคุณคลิกดูแฟ้มแหล่งที่มาในหน้าผลการดำเนินการทดสอบ เมื่อไม่มีผลการทดสอบโดยละเอียดแล้ว คุณยังสามารถดูได้ว่าการทดสอบใดผ่านหรือล้มเหลว

เพื่อรักษาผลการทดสอบรายละเอียดได้นานกว่า 90 วันคุณจะต้องส่งผลการทดสอบเหล่านี้ไปยังถัง Cloud Storage ที่คุณเป็นเจ้าของใช้ --results ถังตัวเลือก GCloud บรรทัดคำสั่ง จากนั้นคุณสามารถตั้งค่าอายุเพื่อกำหนดวิธีผลยาวจะถูกเก็บไว้ในถัง Cloud Storage ของคุณ ดู เงื่อนไขระยะเวลาการ สำหรับข้อมูลเกี่ยวกับวิธีการเปลี่ยนการตั้งค่าอายุ