ประสิทธิภาพรันไทม์ของแอปแบ่งออกเป็นการทดสอบในเครื่องและการทดสอบภาคสนาม โปรดทราบว่าทั้ง 2 พื้นที่นี้ให้ผลลัพธ์และเมตริกที่แตกต่างกัน ตราบใดที่ผลลัพธ์สรุปได้ชัดเจนแล้ว ความแตกต่างดังกล่าวก็ยอมรับได้
การทดสอบภาคสนาม
การทดสอบภาคสนามช่วยให้คุณเข้าใจประสิทธิภาพของแอปกับผู้ใช้จริงภายใต้เงื่อนไขในชีวิตจริง ซึ่งเป็นพื้นที่สำคัญและช่วยให้เข้าใจ ประสิทธิภาพของแอปในวงการนี้ คุณสามารถใช้เครื่องมือต่างๆ เช่น Google Play Vitals และFirebase Performance Monitoring เพื่อรับเมตริกภาคสนามจากผู้ใช้
คุณสามารถใช้ไลบรารีการติดตาม AndroidX เพื่อเพิ่มจุดติดตาม ซึ่งจะให้บริบทและข้อมูลเชิงลึกเพิ่มเติมแก่เมตริกในสนาม
นอกจากนี้ คุณยังใช้ ApplicationStartInfo
และ ApplicationExitInfo
เพื่อรับข้อมูลโดยละเอียดเกี่ยวกับการเริ่มต้นและออกจากแอปพลิเคชันของผู้ใช้ได้ด้วย
ไลบรารี AndroidX JankStats ช่วยรวบรวมและรายงานเฟรมที่ช้าและเฟรมที่หลุดไปเพื่อการวิเคราะห์เพิ่มเติม
การทดสอบในเครื่อง
เรามีไลบรารีการเปรียบเทียบเพื่อทดสอบประสิทธิภาพรันไทม์ของแอปในเครื่อง โดยแบ่งออกเป็นไลบรารี macrobenchmark ซึ่งสามารถใช้เพื่อทดสอบประสิทธิภาพของทั้ง FLow ของผู้ใช้ และไลบรารี microbenchmark ซึ่งใช้วิเคราะห์ประสิทธิภาพของ Hot Loop ของแอปพลิเคชันหรือไลบรารี
การทดสอบประสิทธิภาพทั้งหมดควรทําในอุปกรณ์จริง วิธีนี้เป็นเพียงวิธีเดียวที่จะตรวจสอบได้ว่าประสิทธิภาพที่คุณวัดคือประสิทธิภาพจริงที่เกิดขึ้นในอุปกรณ์ การทดสอบประสิทธิภาพรันไทม์จะให้ผลลัพธ์ที่แตกต่างกันไป ขึ้นอยู่กับอุปกรณ์ที่ใช้ทดสอบและระดับการใช้งานอุปกรณ์
ประสิทธิภาพของแอปพลิเคชันอาจถดถอย คุณควรทำการทดสอบประสิทธิภาพบ่อยๆ เพื่อหลีกเลี่ยงการถดถอย ในสถานการณ์ที่ดีที่สุด จะมีการเปรียบเทียบแอปทุกครั้งที่มีการเพิ่มฟีเจอร์ใหม่หรือโค้ดรวมเข้าไว้ใน Branch หลัก การตรวจสอบประสิทธิภาพขั้นต่ำเป็นเพียงการเปรียบเทียบตัวเลือกการเปิดตัว และยืนยันว่าเวลาที่ใช้ในการเริ่มต้นและกรอบเวลาของเฟรมจะไม่ถดถอยในเส้นทางหลักของผู้ใช้ เราขอแนะนําให้ทําการเปรียบเทียบเมื่อเป็นไปได้ เช่น ก่อนผสานฟีเจอร์ไปยังสาขาหลักหรือสําหรับบิลด์รายวัน
ใช้ผลลัพธ์ที่ได้
การทดสอบประสิทธิภาพเป็นกระบวนการที่ต้องทำอย่างต่อเนื่อง เราขอแนะนําให้คุณจัดเก็บผลการทดสอบประสิทธิภาพในลักษณะที่เปรียบเทียบได้เมื่อเวลาผ่านไป
คุณใช้ผลลัพธ์ของการทดสอบประสิทธิภาพได้หลายวิธี
- ปรับปรุงประสิทธิภาพ - ใช้ผลลัพธ์การวัดเพื่อจัดลำดับความสำคัญในการปรับปรุงประสิทธิภาพ
- หลีกเลี่ยงการถดถอย - ตรวจสอบว่าประสิทธิภาพของรุ่นใหม่ไม่ถดถอย
- การตรวจสอบการใช้งานจริง - ทำความเข้าใจว่ามีปัญหาที่คุณไม่เห็นระหว่างการพัฒนาหรือไม่
ดูข้อมูลเพิ่มเติมเกี่ยวกับการทดสอบประสิทธิภาพรันไทม์ของ Android ได้ที่คำแนะนำเกี่ยวกับประสิทธิภาพของแอป