การทดสอบประสิทธิภาพของแอพมือถือ
⚡ สรุปอย่างชาญฉลาด
การทดสอบประสิทธิภาพแอปพลิเคชันบนมือถือจะวัดว่าแอปพลิเคชันเริ่มต้นเร็วแค่ไหน ใช้แบตเตอรี่และหน่วยความจำไปเท่าใด การตอบสนองของ API รวดเร็วเพียงใด และแอปพลิเคชันทำงานได้อย่างราบรื่นเพียงใดบนเครือข่ายที่ไม่เสถียร
สำหรับแอปพลิเคชันบนมือถือใดๆ ประสิทธิภาพการทำงานถือเป็นสิ่งสำคัญอย่างยิ่ง หากแอปพลิเคชันบนมือถือของคุณทำงานได้ไม่ดี ผู้ใช้จะถอนการติดตั้งแอปของคุณและหาแอปพลิเคชันอื่นที่ทำงานได้ดีกว่า
แอปพลิเคชันมือถือของคุณต้องได้รับการทดสอบอย่างละเอียดก่อนที่จะเผยแพร่ให้กับผู้ใช้ปลายทาง
กลยุทธ์การทดสอบแอปพลิเคชันบนมือถือ
ประสิทธิภาพการทำงานของแอปพลิเคชันบนโทรศัพท์มือถือหรืออุปกรณ์สมาร์ทใดๆ โดยทั่วไปจะวัดเป็นสามประเภทต่อไปนี้
- ประสิทธิภาพของอุปกรณ์
- ประสิทธิภาพของเซิร์ฟเวอร์/API
- ประสิทธิภาพเครือข่าย
แผนภาพด้านล่างแสดงให้เห็นถึงความสัมพันธ์ระหว่างสามชั้นดังกล่าวกับการตรวจสอบต่างๆ
ประสิทธิภาพของอุปกรณ์
เมื่อลูกค้าพบกับแอปที่ช้า พวกเขาก็จะรู้สึกหงุดหงิด
สำหรับการตรวจสอบประสิทธิภาพของอุปกรณ์ โปรดตรวจสอบสิ่งต่อไปนี้:
- การเริ่มต้นแอป: แอปของคุณใช้เวลาเท่าไรในการเริ่มต้น? เป็นพารามิเตอร์ประสิทธิภาพแรกที่ปรับโดยผู้ใช้ ตามกฎทั่วไป หลังจากที่ผู้ใช้แตะไอคอนแอป หน้าจอแรกควรจะแสดงภายใน 1-2 วินาที
- ระยะเวลาการใช้งานแบตเตอรี่ขณะใช้งานแอป: เมื่อใช้งานอย่างต่อเนื่อง แอปมือถือบางแอปจะใช้พลังงานแบตเตอรี่สูงและทำให้โทรศัพท์ร้อนขึ้น ซึ่งโดยปกติแล้วจะเกิดขึ้นเมื่อแอปของคุณใช้ทรัพยากรมากกว่าที่จำเป็น ทำให้หน่วยประมวลผลทำงานหนักขึ้น
- การใช้หน่วยความจำ: เมื่อ การทดสอบ แอพควรตรวจสอบปริมาณการใช้หน่วยความจำของแอพ การใช้ฟังก์ชันบางอย่างในแอปจะทำให้การใช้หน่วยความจำเพิ่มขึ้นด้วย ตัวอย่างเช่นใน Android แอพเมื่อมีการใช้การแจ้งเตือนแบบพุช การใช้หน่วยความจำจะเพิ่มขึ้น
ในบางกรณี พบว่าการใช้หน่วยความจำของระบบปฏิบัติการทั้งหมดมีเพียง 14% แต่แอปใหม่ใช้งานไป 11% ดังนั้นปัจจัยเหล่านี้จะต้องได้รับการจัดการก่อนที่จะปรับใช้แอปในโลกแห่งความเป็นจริงหรือมอบให้กับลูกค้า
- ความแตกต่างระหว่างฮาร์ดแวร์และซอฟต์แวร์: เมื่อทดสอบแอปมือถือ จำเป็นต้องตรวจสอบแอปบนอุปกรณ์ที่แตกต่างกัน อาจเป็นกรณีที่แอปทำงานได้อย่างราบรื่นบนอุปกรณ์เครื่องหนึ่ง แต่ไม่ใช่บนอุปกรณ์อื่น เช่นเดียวกับผู้ขายที่แตกต่างกันของ Android อุปกรณ์ต่างๆ เราสามารถตรวจสอบแอปบนโทรศัพท์ Samsung, HTC และ Lenovo ได้ ในทำนองเดียวกัน แอปจะต้องได้รับการทดสอบด้วย RAM และข้อกำหนดโปรเซสเซอร์ที่แตกต่างกัน เช่น 1 GB หรือ 2 GB
- การใช้งานร่วมกับแอปพลิเคชันอื่นๆ: เมื่อแอปที่อยู่ระหว่างการทดสอบทำงานคู่ขนานกับแอปอื่นๆ ก็ไม่ควรจะมีการรบกวนใดๆ วิธีที่ดีที่สุดในการตรวจสอบคือการสลับแอปที่อยู่ระหว่างการทดสอบและแอปอื่นๆ
- แอปทำงานอยู่เบื้องหลัง: เมื่อเรียกใช้งานแอปพลิเคชันที่ทำงานอยู่เบื้องหลัง แอปนั้นควรคงสถานะเดิมไว้ หากไม่จัดการสถานการณ์นี้อย่างถูกต้อง ข้อมูลอาจสูญหายได้ กรณีวงจรชีวิตที่เกี่ยวข้องจะกล่าวถึงในหัวข้อถัดไป การทดสอบขัดจังหวะ.
ประสิทธิภาพของเซิร์ฟเวอร์/API
เมื่อแอปพลิเคชันสื่อสารกับเซิร์ฟเวอร์ผ่าน API เวลาตอบสนองจะมีความสำคัญต่อประสิทธิภาพการทำงาน สำหรับประสิทธิภาพของเซิร์ฟเวอร์ คุณควรตรวจสอบสิ่งต่อไปนี้:
- การรับส่งข้อมูลเข้าและออกจากเซิร์ฟเวอร์: แอปควรจัดการข้อมูลที่ส่งมาจากเซิร์ฟเวอร์ได้อย่างมีประสิทธิภาพ การโหลดข้อมูลไม่ควรใช้เวลานานเกินไป ในบางแอป ข้อมูลจะถูกส่งมาในรูปแบบเฉพาะ ดังนั้นก่อนที่จะแสดงผลในแอป ข้อมูลนั้นจะต้องถูกแปลงให้เป็นรูปแบบที่เหมาะสมเสียก่อน ในกระบวนการนี้ บางครั้งแอปอาจทำงานช้าลงและเวลาตอบสนองก็จะนานขึ้น
- การเรียกใช้ API ที่สร้างจากแอป: จำนวนการโทรจากแอปที่กำลังทดสอบไปยังเซิร์ฟเวอร์ที่สร้างจากแอปควรน้อยกว่านี้ ในบางกรณี มีการเรียก API หลายครั้งเพื่อการทำงานเดียวกัน เพื่อประสิทธิภาพที่ดีขึ้น ควรจัดการสิ่งนี้โดยมีจำนวนการโทรน้อยลง
- เวลาที่เซิร์ฟเวอร์ปิดปรับปรุง: หากเซิร์ฟเวอร์ล่มหรือไม่สามารถเข้าถึงได้ด้วยเหตุผลใดก็ตาม เราสามารถบันทึกข้อมูลลงในฐานข้อมูลภายในได้ ดังนั้น เมื่อใดก็ตามที่เซิร์ฟเวอร์ล่ม เราสามารถแสดงข้อมูลที่จัดเก็บไว้ในฐานข้อมูลภายในได้ อีกวิธีหนึ่งคือการใช้เซิร์ฟเวอร์ฐานข้อมูลสำรอง (failover database servers) กล่าวคือ หากเซิร์ฟเวอร์ตัวใดตัวหนึ่งล่มหรืออยู่ในช่วงการบำรุงรักษา เซิร์ฟเวอร์สำรองควรพร้อมใช้งานเพื่อสลับไปใช้งาน เซิร์ฟเวอร์สำรองควรมีการจำลองและซิงโครไนซ์อย่างต่อเนื่องกับเซิร์ฟเวอร์หลัก
ประสิทธิภาพเครือข่าย
จำเป็นต้องวัดประสิทธิภาพของแอปบนเครือข่ายและคุณสมบัติของเครือข่ายที่แตกต่างกัน
สำหรับประสิทธิภาพของเครือข่าย คุณจะตรวจสอบสิ่งต่าง ๆ ดังต่อไปนี้
- ความตื่นเต้น: เมื่อมีความล่าช้าในการรับข้อมูลบนเครือข่ายจะเรียกว่ากระวนกระวายใจ เป็นปัญหากับเครือข่ายไร้การเชื่อมต่อหรือเครือข่ายสวิตช์แพ็คเก็ต เมื่อข้อมูลถูกกระจายออกเป็นแพ็กเก็ต แพ็กเก็ตสามารถเดินทางด้วยเส้นทางที่ไม่เหมือนกันจากผู้ส่งไปยังผู้รับ เมื่อข้อมูลมาถึงตำแหน่งที่ต้องการ ข้อมูลก็จะถูกรบกวนมากกว่าที่ถูกส่งไปในตอนแรก ในกรณีของ Jitters แอพมือถือควรจะมีความสามารถเพียงพอที่จะจัดการได้
คุณต้องแสดงการแจ้งเตือนที่เหมาะสมแก่ผู้ใช้ปลายทาง ไม่ว่าจะเป็นการส่งคำขอซ้ำหรือรอจนกว่าระบบจะตอบสนองอีกครั้ง
- การสูญเสียแพ็คเก็ต: ในกรณีที่แพ็กเก็ตสูญหายทั้งหมด แอปควรสามารถส่งคำขอข้อมูลใหม่อีกครั้งหรือควรสร้างการแจ้งเตือนตามนั้น หากข้อมูลไม่ครบถ้วน ผู้ใช้จะไม่สามารถเข้าใจข้อมูลที่แสดงในแอปได้ ซึ่งอาจสร้างความเครียดให้กับผู้ใช้ ดังนั้น จึงควรแสดงข้อความที่เหมาะสมหรือแจ้งให้ผู้ใช้ลองอีกครั้ง
- ความเร็วเครือข่าย: จำเป็นต้องตรวจสอบแอปบนเครือข่ายหลากหลายประเภทที่มีความเร็วแตกต่างกัน แอปควรได้รับการทดสอบบนเครือข่าย 3G, 4G และ 5G รวมถึงเครือข่าย Wi-Fi และเครือข่ายมือถือด้วย นอกจากนี้ ควรตรวจสอบพฤติกรรมของแอป โดยเฉพาะอย่างยิ่งเมื่อมีทั้งสองเครือข่ายใช้งานได้ และเมื่อมีการสลับไปมาระหว่างเครือข่ายต่างๆ
ตัวอย่างเช่น ปัญหาอาจเกิดขึ้นในแอปสำหรับผู้ใช้ขณะเปลี่ยนเครือข่ายโทรศัพท์จาก 4G เป็น Wi-Fi และในทางกลับกัน ในกรณีนี้ แอปจะไม่ตอบสนองและอาจต้องรีสตาร์ทแอปเพื่อใช้งานอีกครั้ง
การแก้ไขปัญหาประสิทธิภาพของแอปพลิเคชันมือถือ
หลังจากค้นพบปัญหา/ปัญหาในขณะนั้น การทดสอบประสิทธิภาพถึงเวลาแล้วที่จะ tracและแก้ไขข้อผิดพลาด
ปัญหา 1) ความล่าช้าหรือการตอบสนองที่ช้าของแอพมือถือ
สาเหตุของความล่าช้านี้อาจเป็น RAM, Cache ฯลฯ
คุณต้องฆ่ากระบวนการที่ไม่จำเป็นหรือล้างแคช การแก้ไขปัญหาการเชื่อมต่ออาจช่วยแก้ปัญหาบางอย่างที่ทำให้เกิดความล่าช้าได้
ปัญหาที่ 2) แอปรีสตาร์ท ล็อคค้าง หรือไม่ตอบสนอง
อาจแก้ไขได้โดยทำตามขั้นตอนต่อไปนี้
- การเพิ่มประสิทธิภาพรหัสแอปพลิเคชัน
- ซอฟต์แวร์ควรได้รับการแพตช์และอัปเดต
- คืนค่าอัตโนมัติ
- การจัดการ RAM หรือ ROM ในบางกรณีขณะใช้การ์ดภายนอก
- Wiping การแบ่งพาร์ติชันแคช
- ตรวจสอบว่าแอปทำงานร่วมกับแอปและ API ของบุคคลที่สามอื่นๆ ได้หรือไม่
- แผนที่แสดงที่ตั้งบริษัทping แอปพลิเคชันมือถือตามอุปกรณ์
เครื่องมือทดสอบแอปบนมือถือที่มีประโยชน์
เครื่องมือทดสอบแอปบนอุปกรณ์เคลื่อนที่ แตกต่างกันไปตามอุปกรณ์หรือระบบปฏิบัติการมือถือ เครื่องมือทดสอบประสิทธิภาพของแอพมือถือทั่วไปบางตัวได้แก่
ANDROID
- Robotium มันก็เหมือนกับ Selenium สำหรับแอปบนมือถือ ผู้ทดสอบสามารถบันทึกและเล่นขั้นตอนต่างๆ ที่จำเป็นในการทดสอบได้
- นักวิ่งลิง MonkeyRunner สามารถรันการทดสอบบนอุปกรณ์จริงที่เชื่อมต่อกับพีซีหรืออีมูเลเตอร์ เครื่องมือนี้มี API ซึ่งช่วยให้สามารถควบคุมสมาร์ทโฟน แท็บเล็ต หรือโปรแกรมจำลองจากภายนอกได้ Android รหัส.
⚠️ หมายเหตุเกี่ยวกับเวอร์ชัน: ทั้งสอง Android รายการเหล่านี้เป็นข้อมูลเก่า Robotium ไม่มีผลงานออกใหม่ตั้งแต่ปี 2016 และ Google ระบุว่า MonkeyRunner ไม่ได้รับการดูแลรักษาอีกต่อไป โดยแนะนำให้ทีมพัฒนาไปใช้ UI Automator และฟังก์ชันอื่นๆ แทน uiautomatorviewer แทนที่จะเป็นผู้ตรวจสอบ
APPLE
- ระบบอัตโนมัติ (Mac) Automator คือแอปพลิเคชันที่พัฒนาโดย Apple สำหรับ macOSโปรแกรมนี้ใช้การคลิกเมาส์ (หรือลากและวาง) เพื่อสร้างเวิร์กโฟลว์สำหรับการทำงานซ้ำๆ โดยอัตโนมัติเป็นชุดๆ เพื่อการแก้ไขที่รวดเร็วยิ่งขึ้น ซึ่งช่วยประหยัดเวลาและแรงงานเมื่อเทียบกับการแก้ไขไฟล์แต่ละไฟล์ด้วยตนเอง
ชาเลนจ์ (Challenge)
ความท้าทายสำคัญที่ต้องเผชิญในขณะที่การทดสอบประสิทธิภาพ ได้แก่
- การจัดระเบียบแพลตฟอร์มมือถือที่แตกต่างกันและระบบปฏิบัติการของพวกเขา
- จำลองการเชื่อมต่อต่างๆ เช่น 3G, 4G, 5G หรือ Wi-Fi เป็นต้น
- ข้อจำกัดของอุปกรณ์เคลื่อนที่ เช่น การใช้แบตเตอรี่และทรัพยากร
- การใช้งานโทรศัพท์มือถือ
- อุปกรณ์มือถือหลากหลายขนาดเพื่อเรียกใช้แอพเดียวกัน
ตั้งค่าสภาพแวดล้อมการทดสอบประสิทธิภาพของแอปบนมือถือ
ในการกำหนดค่าสภาพแวดล้อมการทดสอบ คุณต้อง-
- ความเข้าใจเกี่ยวกับ Mobile App ที่ต้องทดสอบ
- การระบุระบบปฏิบัติการต่างๆ ที่แอปจำเป็นต้องใช้
- สร้างการตั้งค่าการทดสอบ
- สร้างโปรแกรมจำลองหรือเครื่องจำลอง
- ต้นแบบping ของการตั้งค่าจริง
- การเลือกเครื่องมือที่เหมาะสมสำหรับการทดสอบ
รายการตรวจสอบการทดสอบประสิทธิภาพแอปบนมือถือ
การทดสอบประสิทธิภาพของแอปบนอุปกรณ์เคลื่อนที่ถือเป็นการวัดที่สำคัญก่อนเผยแพร่ การทดสอบประสิทธิภาพเสร็จสิ้นเพื่อตรวจสอบ
- ต้องใช้ RAM เท่าใดในการใช้แอพนี้
- เพื่อตรวจสอบความเร็วและเวลาตอบสนองของ APP ภายใต้เครือข่ายและสถานการณ์ที่แตกต่างกัน
- รับประกันประสบการณ์ผู้ใช้ที่สมจริงภายใต้เงื่อนไขเครือข่ายต่างๆ
- ตรวจสอบให้แน่ใจว่าได้รับผลลัพธ์ที่ต้องการในกรณีที่มีการเชื่อมต่อหลายรายการ
- ตรวจสอบให้แน่ใจว่าแอปพลิเคชันไม่ขัดข้อง
- ตรวจสอบให้แน่ใจว่าแอปพลิเคชันมือถือทำงานได้ดีในขณะที่ใช้ข้อมูล Wi-Fi หรือการเชื่อมต่ออื่นๆ
- การตรวจสอบสถานะการออนไลน์และคอขวดการใช้งาน API บนมือถือ
- เพื่อให้แน่ใจว่ามีผู้ใช้งานพร้อมกันได้สูงสุด
- สุดท้ายนี้ เพื่อตรวจสอบขีดจำกัดของแอปมือถือ

