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