Performance testing of mobile apps
-
Upload
vodqa -
Category
Technology
-
view
3.727 -
download
3
description
Transcript of Performance testing of mobile apps
![Page 1: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/1.jpg)
Mobile Performance Tes1ng
@RupeshDubey @PriyankDhillon
![Page 2: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/2.jpg)
What to expect?
• Why mobile performance is important? • Different types of mobile apps. • Performance Challenges • Tools and Technique • Web apps Profiling (Latency,page audits) • Na1ve apps Profiling (Memory leaks) • Recommenda1ons
![Page 3: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/3.jpg)
Why mobile perf is important?
Source:Blaze
![Page 4: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/4.jpg)
Mobile Users Expect equal speeds
Source:Blaze
![Page 5: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/5.jpg)
Users abandon slow apps
![Page 6: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/6.jpg)
Mobile Apps
• Mobile Browser apps – mDOT-‐ dedicated mobile sites – Responsive web design
• Na1ve Apps • Hybrid Apps
![Page 7: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/7.jpg)
mDOT Sites
Source:Velocity
![Page 8: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/8.jpg)
Responsive Web Apps
Source:BostonGlobe
![Page 9: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/9.jpg)
Mobile Apps
• Mobile Browser apps – Dedicated mobile sites -‐ mDOT – Responsive web design
• Na1ve Apps • Hybrid Apps
![Page 10: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/10.jpg)
Performance Challenges
• Mobile Browser apps – mDOT-‐ dedicated mobile sites – Responsive web design
• Na1ve Apps • Hybrid Apps
![Page 11: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/11.jpg)
Front-‐End Vs Back-‐End performance
![Page 12: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/12.jpg)
Perf Challenges while browsing on mobile
• Radio Resource Control • HTTP pipelining • Browser Cache • JS execu1on 1me
![Page 13: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/13.jpg)
Radio Resource Controlling and RTT
![Page 14: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/14.jpg)
JS Execu1on Time
![Page 15: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/15.jpg)
Browser Cache
Desktop browser Cache: 512 MB
![Page 16: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/16.jpg)
Browser Cache
• sqlite3 webviewCache.db 'select expires from cache order by expires desc;'
![Page 17: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/17.jpg)
HTTP pipelining
![Page 18: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/18.jpg)
How to Monitor
• MobiTest / Web page test • ADB ( Android debug bridge) • Remote debugging for mobile safari • Yslow • SpriteMe • Icy (iOS specific)
![Page 19: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/19.jpg)
Demo
![Page 20: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/20.jpg)
Responsive Web Design
![Page 21: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/21.jpg)
Takeaways for Mobile apps
• Minify your java script and CSS • All images have dimensions specified • Have an efficient caching strategy • Load JavaScript at the end of the page • Lazy loading • Different sizes of image for Responsive web apps • Don’t download extra CSS • Serve low resolu1on images on smaller screen
![Page 22: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/22.jpg)
Mobile Apps
• Mobile Browser apps – mDOT-‐ dedicated mobile sites – Responsive web design
• Na9ve Apps • Hybrid Apps
![Page 23: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/23.jpg)
Challenges
• Memory leaks • CPU limit • Network/Bandwidth • Power consump1ons
![Page 24: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/24.jpg)
Memory Leaks
![Page 25: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/25.jpg)
ARC
![Page 26: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/26.jpg)
Power Consump1on
![Page 27: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/27.jpg)
Power Consump1on(Contd)
![Page 28: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/28.jpg)
Network/Bandwidth
![Page 29: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/29.jpg)
Takeaways for na1ve apps • Release or free any allocated memory as soon as you are done using it.
• Avoid compu1ng anything un1l you are sure you actually need it.
• Avoid spinlocks, polling, and other CPU-‐hogging techniques.
• When prac1cal, perform network requests in batches rather than one at a 1me.
• Consider memory-‐mapping large files instead of reading them into RAM. Doing so helps the system manage memory more efficiently.
![Page 30: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/30.jpg)
Few Pointers for iOS App submission
iOS Guidelines: • App size should not be more than 50 MB for non-‐gaming app.
• Any memory leak and your app is rejected • Device bagery constraints • Excessive hea1ng
![Page 31: Performance testing of mobile apps](https://reader033.fdocuments.net/reader033/viewer/2022052820/54708b3fb4af9fcd0a8b47de/html5/thumbnails/31.jpg)
Ques1ons?