Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Run the load down your mobile app

47 views

Published on

This presentation gives insite on mobile performance spects and how it can be achived.

Published in: Mobile
  • Be the first to comment

  • Be the first to like this

Run the load down your mobile app

  1. 1. Hello! Nice to meet you! • I am Christina Thalayasingam • Senior Quality Engineer (Test Automation) at Sysco LABS. • 4 years in Test Automation • Currently working solely with Selenium and Apache Jmeter. • Spoken at various Technical Test Meetups and also at Selenium Conf ‘16, London, Selenium Conf ‘17, Austin, Texas and at the Colombo Test Automation Conference 2017. Find me at: @ChristinaThalay
  2. 2. Run the load down your mobile appChristina Thalayasingam
  3. 3. • Importance of Mobile Performance Testing • Aspects of Mobile Performance Testing • Testing Backend response performance • Device and Network Performance • Demos SELENIUM CONFERENCE CHICAGO - 2018 AGENDA
  4. 4. Source : Dimensional Research , A MOBILE APP USER SURVEY - Feb 2015 SELENIUM CONFERENCE CHICAGO - 2018
  5. 5. Source : Dimensional Research , A MOBILE APP USER SURVEY - Feb 2015 SELENIUM CONFERENCE CHICAGO - 2018
  6. 6. SELENIUM CONFERENCE CHICAGO - 2018 Source : Dimensional Research , A MOBILE APP USER SURVEY - Feb 2015
  7. 7. Desktop Mobile Client “Standard” Browser Multitude of clients Technology HTML HTML / Native Bandwidth Fast (1-20 Mb/s) Slow (0.1 Mb/s and up) Latency Small (less than 100ms) Large (100-1000ms) Visual Feedback Immediate After data has loaded* MOBILE vs WEB (CHALLENGES) SELENIUM CONFERENCE CHICAGO - 2018
  8. 8. • Application performance on a mobile phone or any smart device is usually measured in following three categories. ↳ Server/API Performance ↳ Device Performance ↳ Network Performance MOBILE PERFORMANCE TESTING ASPECTS SELENIUM CONFERENCE CHICAGO - 2018
  9. 9. SERVER/API PERFORMANCE
  10. 10. • Data to and from server • API Calls Generated from App • Server Down Time SERVER/API PERFORMANCE SERVER/API PERFORMANCE
  11. 11. SERVER/API PERFORMANCE Back End Apache Tomcat node.js .NET Mobile App HTTP Request HTTP Response
  12. 12. SERVER/API PERFORMANCE Back End Apache Tomcat node.js .NET Recorder HTTP Request HTTP Response Mobile App HTTP Request HTTP Response Back End
  13. 13. • Record the Mobile User Scenario ↳ Install Certificate for Secure Requests ↳ Make Mobile work on proxy • Configure Test Parameters • Run Load Test • Analyze The Results LOAD TESTING STEPS SERVER/API PERFORMANCE
  14. 14. MOBILE APP TEST WITH JMETER DEMO
  15. 15. DEVICE PERFORMANCE
  16. 16. • App Start-Up • Battery Time while using an app • Memory Consumption • Hardware/Software Variation • Usage with Other Apps • App in background • Server Down Time DEVICE PERFORMANCE DEVICE PERFORMANCE
  17. 17. NETWORK PERFORMANCE
  18. 18. • Jitters • Packet Loss • Network Speed NETWORK PERFORMANCE NETWORK PERFORMACE
  19. 19. PERFORMANCE TEST FOR ANDROID APPS WITH APPIUM DEMO
  20. 20. • driver.getPerformanceData("<package>", "<perf type>", <timeout>); • <package> is the package of your AUT (or any other app you wish to profile). • <perf type> is what kind of performance data you want. For the time being, ↳ they are: cpuinfo, memoryinfo, batteryinfo, and networkinfo. • <timeout> is an integer denoting the number of seconds Appium will poll for performance data if it is not immediately available. PERFORMANCE TEST FOR ANDROID APPS WITH APPIUM List<List<Object>> data = driver.getPerformanceData("io.appium.android.apis", "memoryinfo", 10); SELENIUM CONFERENCE CHICAGO - 2018
  21. 21. PERFORMANCE DATA FOR iOS APPS WITH APPIUM DEMO
  22. 22. • Start appium – “appium --relaxed-security” • driver.executeScript("mobile: startPerfRecord", args); • String b64Zip = (String)driver.executeScript("mobile: stopPerfRecord", args); PERFORMANCE DATA FOR iOS APPS WITH APPIUM SELENIUM CONFERENCE CHICAGO - 2018
  23. 23. • https://jmeter.apache.org/ • https://appiumpro.com/ • http://BlazeMeter.com/blog/ SOURCES SELENIUM CONFERENCE CHICAGO - 2018
  24. 24. Thank you very much for your time If you have any questions please don’t hesitate to contact me at: ▪ www.thalayasingamchristina.wordpress.com ▪ @ChristinaThalay

×