Mobile Performance Testing

1,141 views

Published on

The why, what and how of Mobile Testing, including best practices, tools recommendations and tips.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,141
On SlideShare
0
From Embeds
0
Number of Embeds
15
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Mobile Performance Testing

  1. 1. Mobile  Performance  Tes1ng                                                        @RupeshDubey                                                          @PriyankDhillon  
  2. 2. 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  
  3. 3. Why  mobile  perf  is  important?   Source:Blaze    
  4. 4. Mobile  Users  Expect  equal  speeds   Source:Blaze  
  5. 5. Users  abandon  slow  apps  
  6. 6. Mobile  Apps   •  Mobile  Browser  apps   –  mDOT-­‐  dedicated  mobile  sites   –  Responsive  web  design     •  Na1ve  Apps     •  Hybrid  Apps  
  7. 7. mDOT  Sites   Source:Velocity  
  8. 8. Responsive  Web  Apps   Source:BostonGlobe  
  9. 9. Mobile  Apps   •  Mobile  Browser  apps   –  Dedicated  mobile  sites  -­‐  mDOT   –  Responsive  web  design     •  Na1ve  Apps     •  Hybrid  Apps  
  10. 10. Performance  Challenges     •  Mobile  Browser  apps   –  mDOT-­‐  dedicated  mobile  sites   –  Responsive  web  design     •  Na1ve  Apps     •  Hybrid  Apps  
  11. 11. Front-­‐End  Vs  Back-­‐End  performance  
  12. 12. Perf  Challenges  while  browsing  on   mobile   •  Radio  Resource  Control   •  HTTP  pipelining   •  Browser  Cache   •  JS  execu1on  1me    
  13. 13. Radio  Resource  Controlling  and  RTT  
  14. 14. JS  Execu1on  Time  
  15. 15. Browser  Cache   Desktop  browser  Cache:  512  MB  
  16. 16. Browser  Cache   •  sqlite3  webviewCache.db  'select  expires  from   cache  order  by  expires  desc;'  
  17. 17. HTTP  pipelining  
  18. 18. How  to  Monitor     •  MobiTest  /  Web  page  test   •  ADB  (  Android  debug  bridge)   •  Remote  debugging  for  mobile  safari   •  Yslow   •  SpriteMe   •  Icy  (iOS  specific)  
  19. 19. Demo  
  20. 20. Responsive  Web  Design  
  21. 21. 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  
  22. 22. Mobile  Apps   •  Mobile  Browser  apps   –  mDOT-­‐  dedicated  mobile  sites   –  Responsive  web  design     •  Na9ve  Apps     •  Hybrid  Apps  
  23. 23. Challenges   •  Memory  leaks   •  CPU  limit     •  Network/Bandwidth   •  Power  consump1ons    
  24. 24. Memory  Leaks  
  25. 25. ARC  
  26. 26. Power  Consump1on  
  27. 27. Power  Consump1on(Contd)  
  28. 28. Network/Bandwidth  
  29. 29. 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.  
  30. 30. 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    
  31. 31. Ques1ons?  

×