SlideShare a Scribd company logo
1 of 36
Mobile Performance Testing - Part 2 – Testing the Server




     www.xbosoft.com
Assumptions, Target Audience
•   This webinar will cover the role of the server in mobile
    performance, how to test for it, and what can be done.
•   Focus on mobile website performance
•   Performance testing of the mobile app/device was covered
    in a previous webinar.
•   Performance testing emphasizing the network will be
    covered in a future webinar
    –   March 14 at 10 AM EST 2013


•   Target audience – managers, developers, testers
Agenda
• Introduction: The Mobile Challenge
• Differences between Mobile and Desktop usage
• Know what is going on behind the scenes
   – 1st Step, a Simple Comparison Test
   – 2nd Step, a Simple Performance Test
   – 3rd Step, a Simple Load Test
• Optimization Strategies
• Conclusion
Introduction: The Mobile Challenge
• Mobile Internet usage is projected to pass desktop Internet
  usage in 2014
• Google found that a .5-1 second increase in page load time
  resulted in a 20% decrease in traffic and revenue.
• Akamai found that the number of users who abandon a page
  after 3 seconds was 57%.
• We expect the online experience to be as fast as our desktop
  experience, but it isn’t, and that is a problem.
• Mobile is slower, but it doesn’t have to be.
2013 State of Mobile Testing Survey
Differences Between Desktop and Mobile QA processes
• 30% of mobile developers believe that the differences
  between mobile and desktop are significant enough to have
  different processes for development and QA.
• An additional 25% don’t have different processes for mobile,
  but think that different processes for mobile are necessary.
                             - 2013 State of Mobile Testing, XBOSoft
• Report of the survey findings can be found at
  www.xbosoft.com/knowledge_center/ from March 2013
What are the
Differences between
Mobile and Desktop?
Differences between Mobile and Desktop
Fat vs. Thin data pipe:

                               Fat, high
                        speed, Broadband data
                                 pipe
        The Cloud




                Thin, slow, 2.5G
                or 3G data pipe
Differences between Mobile and Desktop

Many Tower connections:
• Jumping from tower to tower can slow down
  your connection by an order of magnitude.
Differences between Mobile and Desktop
Smaller, less powerful device: Your mobile device has a less powerful CPU, less RAM and a
   smaller screen resolution. The server needs to take this into account.




Navigation: Your finger is used to navigate so touches have to be translated into clicks.
Differences between Mobile and Desktop

Downloading Strategies:
• Some websites preload all the next level pages.
   – This can greatly speed up the user experience for the desktop, but for
     the mobile device, it takes up valuable bandwidth and can be costly.
• Some anticipate what you might click on next and preloads
  those pages.

Charging for Data Usage:
• In many countries, data usage can be expensive.
m.site vs. apps vs. full website
Three approaches to making you website accessible to
  mobile devices
1. m.site – the most common approach
   + designed for mobile makes it faster and easier to read
   – two versions of your website
   – features missing or accessed differently cause user discontent
2. Mobile app – resides on mobile device
   + Highly optimized for that mobile device
   – User may not download app or keep it up to date
3. Mobile Accessible of full website
   + One version of website, common user experience
   – can compromise main website, harder to program
Know what you are testing
Proxy Servers: What are they?


           GPRS

                                            Website
                                            Server
                                 Internet
Two Examples :
                        Proxy
• Nokia devices and     Server
• Opera mini browsers
Know what you are testing
Proxy Servers: How do they affect your testing?
• Nokia devices and Opera mini browsers
• Can reduce by up to 90% the amount of data
  transferred.
• Speed and Cost savings can be considerable
• most users will NOT access your servers through a
  proxy server
• make sure you are testing in non-proxy server
  environments
1st Step, a Simple Comparison Test
Simple load performance test on XBOSoft’s main page
and several of its key pages. Not thorough, but a quick
check. Of course an automated smoke test is preferred,
but this is a quick fist step for those starting.
Compare XBOSoft’s
1. full version website, xbosoft.com, from the desktop.
2. xbosoft.com, from the mobile device.
3. m.xbosoft.com, from the mobile device.
1st Step, a Simple Comparison Test
1. full version website,   2. xbosoft.com, on   3. m.xbosoft.com,
   xbosoft.com, on the        the mobile           on the mobile
   desktop                    device               device
1st Step, a Simple Comparison Test




• Download speed was reduced by 40% on the first download
  from the full website to the m. website.
• However for a repeat download, the reduction in time was
  only 7%.
Tools
• Webpagetest – webpagetest.org
   – Quick and easy to start
   – Offers connection analysis, page loading waterfall analysis, first view
     and repeat view analysis, a report card and much more
• Akamai has a simple test for your mobile device -
  http://mobitest.akamai.com/m/index.cgi
   – Doesn’t differentiate between first run and repeat runs with caching.
   – Very simple, but good for getting started
• howtogomo.com
   – Quick and easy
• Plus many, many more
2nd Step, a Simple Performance Test
• Test with WiFi, take the network out of the equation.
• The Network part of the equation will be discuss in
  Mobile Performance Testing Part 3: the Network
• Goal is to make phone as fast as desktop without
  having network involved
2nd Step, a Simple Performance Test
Test with webpagetest.org
•   It is free.
•   Run by WPO Foundation whose goal is to “support Web
    Performance Movement”.
•   A quick way to identify areas that are causing
    performance problems.
•   Mainly for desktop testing, but it good for a quick test for
    iOS or Android 2.3
2nd Step, a Simple Performance Test
webpagetest.org provides
•   A summary.
•   The load times, for both first and repeat downloads.
•   Connection analysis.
•   Detailed look at each component downloaded.
•   Plus much more.
2nd Step, a Simple Performance Test
2nd Step, a Simple Performance Test
Go to webpagetest.org and enter
•    Website url
•    Test location – choose from almost any where in the world
•    Browser/device

For this Simple Performance Test, we chose
•    Website url – xbosoft.com and m.xbosoft.com
•    Test location – Dulles VA
•    Browser/device - iPhone 4 iOS 5.1
This will analyze the performance of your website, from this specified
    location and this specified device/browser.
2nd Step, a Simple Performance Test


• First Byte Time – time for receiving first byte for the page.
• Keep Alive Enabled – connection socket is kept open so that many objects
  can use it.
• Compress Transfer – compress object types “JavaScript” or “text”.
• Compress Images – compress object types “image”.
• Cache Static Content – controls expiration of objects in cache.
• CDN Detected – Content Delivery Network, Is a distributed system of
  servers being used? – to be discussed in detail in next webinar
2nd Step, a Simple Performance Test
webpagetest.org




Gives the same information as our ‘Simple Comparison Test’, but
with an automated tools.
First View for xbosoft.com




Ten connection sockets were opened, many
stayed open to retrieve many objects, which
increases performance.
First View – Waterfall of Objects
                      • The number of objects
                      requested is a lot for a
                      mobile device.
                      • To speed up the first
                      download, many of the
                      objects need to be
                      combined.
                      • The repeat download
                      was so much faster
                      because most of these
                      objects were cached.
Repeat View for xbosoft.com

                   Dramatic decrease
                   in connections and
                   objects which
                   resulted in dramatic
                   decrease in
                   response time.
First View for m.xbosoft.com
                   • The number of objects
                   was cut from 50 to 20
                   • The number of
                   connections was cut from
                   10 to 3
Repeat View for m.xbosoft.com
                    • Caching cut the
                    number of bojects in
                    half.
3rd Step, a Simple Load Test
At a minimum, Simple Load Test should be done
•   start with a server that has been load tested for the desktop.
•   simulate the 500 desktop users.
•   add one mobile user at a time and monitor the effect on the server.



                                                              Simulate
                                                              500 users




                  Add mobile
                  user 1 at a
                  time
Optimization Strategies
• 80% of the time it takes for a web page to load is on the client
  side
• The server has to change what it delivers to make the client’s
  job easier.

Two main Strategies
1. Reduce transmissions
2. Reduce payload
1) Reducing the number of HTTP
                      Requests
Why will this help?
-   Round trip with a broadband connection can be 1-30 milliseconds
-   Round trip for a 2.5G or 3G network is usually 300-400 milliseconds (and it
    can be a lot worse).
-   Round trip for a 4G network is typically 200+.
What can be done?
–   Consolidating Resources
–   Embed resources in html for first-time use
–   HTML5 Web Storage
–   Uni-directional server update
2) Reduce Payloads
Why will this help?
– Less data transferred, less time spent
– If over device hw capacities, reducing payload can mean the
  difference between loading a page and a page failure
What can be done?
– Compress
– Resize
– Simplify
Future Solution?
Those that favor ‘making your full website more mobile
   friendly’ is the future solution because of
1) Moore’s Law for computer power and storage, and
2) Nielsen’s Law for Internet bandwidth.
Conclusion
• Test early, test often.
• Best way to solve mobile performance problems is
  to prevent them. Don’t wait until after deployment
  to start worrying about performance issues.
• You don’t need complicated, expensive tools to get
  started, a lot can be done simply.
• No server performance testing will lead to disaster!
Q&A


Follow us on twitter: @XBOSoft

www.xbosoft.com/knowledge_center/

More Related Content

Similar to Mobile Performance Testing - Testing the Server

Mobile Network Performance Testing
Mobile Network Performance TestingMobile Network Performance Testing
Mobile Network Performance TestingXBOSoft
 
Doug Sillars on App Optimization
Doug Sillars on App OptimizationDoug Sillars on App Optimization
Doug Sillars on App Optimizationwipjam
 
Testing Mobile App Performance
Testing Mobile App PerformanceTesting Mobile App Performance
Testing Mobile App PerformanceTechWell
 
Mobile apps that win
Mobile apps that winMobile apps that win
Mobile apps that winDellFoglight
 
Mobile Performance Testing Approaches and Challenges
Mobile Performance Testing Approaches and ChallengesMobile Performance Testing Approaches and Challenges
Mobile Performance Testing Approaches and ChallengesNous Infosystems
 
Gomez Blazing Fast Cloud Best Practices
Gomez Blazing Fast Cloud Best Practices Gomez Blazing Fast Cloud Best Practices
Gomez Blazing Fast Cloud Best Practices Compuware APM
 
Experitest & Wipro Co-Webinar
Experitest & Wipro Co-Webinar Experitest & Wipro Co-Webinar
Experitest & Wipro Co-Webinar Experitest
 
A year with progressive web apps! #webinale
A year with progressive web apps! #webinaleA year with progressive web apps! #webinale
A year with progressive web apps! #webinaleAntonio Peric-Mazar
 
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...NITHIN S.S
 
Application Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary IkhwanApplication Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary IkhwanOpenNebula Project
 
How to deal with mobile traffic expansion
How to deal with mobile traffic expansionHow to deal with mobile traffic expansion
How to deal with mobile traffic expansionMevlana M. Gürbulak
 
Tools. Techniques. Trouble?
Tools. Techniques. Trouble?Tools. Techniques. Trouble?
Tools. Techniques. Trouble?Testplant
 
Magical Performance tuning with Gomez
Magical Performance tuning with GomezMagical Performance tuning with Gomez
Magical Performance tuning with Gomezmcsaha
 
Are You Ready For More Visitors Cognizant Gomez Jan20
Are You Ready For More Visitors   Cognizant  Gomez Jan20Are You Ready For More Visitors   Cognizant  Gomez Jan20
Are You Ready For More Visitors Cognizant Gomez Jan20Compuware APM
 

Similar to Mobile Performance Testing - Testing the Server (20)

Mobile Network Performance Testing
Mobile Network Performance TestingMobile Network Performance Testing
Mobile Network Performance Testing
 
Doug Sillars on App Optimization
Doug Sillars on App OptimizationDoug Sillars on App Optimization
Doug Sillars on App Optimization
 
Browser Based Performance Testing and Tuning
Browser Based Performance Testing and TuningBrowser Based Performance Testing and Tuning
Browser Based Performance Testing and Tuning
 
Testing Mobile App Performance
Testing Mobile App PerformanceTesting Mobile App Performance
Testing Mobile App Performance
 
Mobile apps that win
Mobile apps that winMobile apps that win
Mobile apps that win
 
JMeter
JMeterJMeter
JMeter
 
Mobile Performance Testing Approaches and Challenges
Mobile Performance Testing Approaches and ChallengesMobile Performance Testing Approaches and Challenges
Mobile Performance Testing Approaches and Challenges
 
Gomez Blazing Fast Cloud Best Practices
Gomez Blazing Fast Cloud Best Practices Gomez Blazing Fast Cloud Best Practices
Gomez Blazing Fast Cloud Best Practices
 
Experitest & Wipro Co-Webinar
Experitest & Wipro Co-Webinar Experitest & Wipro Co-Webinar
Experitest & Wipro Co-Webinar
 
A year with progressive web apps! #webinale
A year with progressive web apps! #webinaleA year with progressive web apps! #webinale
A year with progressive web apps! #webinale
 
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
 
28791456 web-testing
28791456 web-testing28791456 web-testing
28791456 web-testing
 
20181023 progressive web_apps_are_here_sfcampua
20181023 progressive web_apps_are_here_sfcampua20181023 progressive web_apps_are_here_sfcampua
20181023 progressive web_apps_are_here_sfcampua
 
Progressive Web Apps are here!
Progressive Web Apps are here!Progressive Web Apps are here!
Progressive Web Apps are here!
 
Application Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary IkhwanApplication Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary Ikhwan
 
How to deal with mobile traffic expansion
How to deal with mobile traffic expansionHow to deal with mobile traffic expansion
How to deal with mobile traffic expansion
 
Lecture 6 cloud
Lecture 6   cloudLecture 6   cloud
Lecture 6 cloud
 
Tools. Techniques. Trouble?
Tools. Techniques. Trouble?Tools. Techniques. Trouble?
Tools. Techniques. Trouble?
 
Magical Performance tuning with Gomez
Magical Performance tuning with GomezMagical Performance tuning with Gomez
Magical Performance tuning with Gomez
 
Are You Ready For More Visitors Cognizant Gomez Jan20
Are You Ready For More Visitors   Cognizant  Gomez Jan20Are You Ready For More Visitors   Cognizant  Gomez Jan20
Are You Ready For More Visitors Cognizant Gomez Jan20
 

More from XBOSoft

Agile Metrics to Boost Software Quality improvement
Agile Metrics to Boost Software Quality improvementAgile Metrics to Boost Software Quality improvement
Agile Metrics to Boost Software Quality improvementXBOSoft
 
Agile Test Management Using Jira and Zephyr
Agile Test Management Using Jira and ZephyrAgile Test Management Using Jira and Zephyr
Agile Test Management Using Jira and ZephyrXBOSoft
 
AI Based Test Automation Without AI
AI Based Test Automation Without AIAI Based Test Automation Without AI
AI Based Test Automation Without AIXBOSoft
 
What Aircrews Can Teach Software Testing Teams - XBOSoft Webinar w/Peter Varhol
What Aircrews Can Teach Software Testing Teams - XBOSoft Webinar w/Peter VarholWhat Aircrews Can Teach Software Testing Teams - XBOSoft Webinar w/Peter Varhol
What Aircrews Can Teach Software Testing Teams - XBOSoft Webinar w/Peter VarholXBOSoft
 
Agile User Acceptance Testing - Incorporating UAT into Agile
Agile User Acceptance Testing - Incorporating UAT into AgileAgile User Acceptance Testing - Incorporating UAT into Agile
Agile User Acceptance Testing - Incorporating UAT into AgileXBOSoft
 
Challenges in Using Big Data for Software QA
Challenges in Using Big Data for Software QAChallenges in Using Big Data for Software QA
Challenges in Using Big Data for Software QAXBOSoft
 
Defect Patterns Analysis for Agile and Waterfall - XBOSoft Webinar with Micha...
Defect Patterns Analysis for Agile and Waterfall - XBOSoft Webinar with Micha...Defect Patterns Analysis for Agile and Waterfall - XBOSoft Webinar with Micha...
Defect Patterns Analysis for Agile and Waterfall - XBOSoft Webinar with Micha...XBOSoft
 
Proactive SQA™ Shifting Left w/Proactive Software Quality Practices
Proactive  SQA™ Shifting Left w/Proactive Software Quality PracticesProactive  SQA™ Shifting Left w/Proactive Software Quality Practices
Proactive SQA™ Shifting Left w/Proactive Software Quality PracticesXBOSoft
 
Mobile Testing Challenges and Solutions XBOSoft Webinar
Mobile Testing Challenges and Solutions XBOSoft WebinarMobile Testing Challenges and Solutions XBOSoft Webinar
Mobile Testing Challenges and Solutions XBOSoft WebinarXBOSoft
 
Heidi Araya - XBOSoft Webinar Guest Speaker - Working with Remote Agile Teams
Heidi Araya - XBOSoft Webinar Guest Speaker - Working with Remote Agile TeamsHeidi Araya - XBOSoft Webinar Guest Speaker - Working with Remote Agile Teams
Heidi Araya - XBOSoft Webinar Guest Speaker - Working with Remote Agile TeamsXBOSoft
 
XBOSoft webinar - How Did I Miss That Bug - Cognitive Biases in Software Testing
XBOSoft webinar - How Did I Miss That Bug - Cognitive Biases in Software TestingXBOSoft webinar - How Did I Miss That Bug - Cognitive Biases in Software Testing
XBOSoft webinar - How Did I Miss That Bug - Cognitive Biases in Software TestingXBOSoft
 
PSQT Keynote: Quality Challenges in the Internet of Things Era
PSQT Keynote: Quality Challenges in the Internet of Things EraPSQT Keynote: Quality Challenges in the Internet of Things Era
PSQT Keynote: Quality Challenges in the Internet of Things EraXBOSoft
 
7 Habits of Highly Effective Agile Testing - Test Istanbul
7 Habits of Highly Effective Agile Testing - Test Istanbul7 Habits of Highly Effective Agile Testing - Test Istanbul
7 Habits of Highly Effective Agile Testing - Test IstanbulXBOSoft
 
Managing Agile Software Projects With Risk and Uncertainty
Managing Agile Software Projects With Risk and UncertaintyManaging Agile Software Projects With Risk and Uncertainty
Managing Agile Software Projects With Risk and UncertaintyXBOSoft
 
Top IOT Testing Challenges Webinar with Jon Hagar
Top IOT Testing Challenges Webinar with Jon HagarTop IOT Testing Challenges Webinar with Jon Hagar
Top IOT Testing Challenges Webinar with Jon HagarXBOSoft
 
Testing in Agile with Coaching Agile Journeys and XBOSoft
Testing in Agile with Coaching Agile Journeys and XBOSoftTesting in Agile with Coaching Agile Journeys and XBOSoft
Testing in Agile with Coaching Agile Journeys and XBOSoftXBOSoft
 
Using JMeter and Google Analytics for Software Performance Testing
Using JMeter and Google Analytics for Software Performance TestingUsing JMeter and Google Analytics for Software Performance Testing
Using JMeter and Google Analytics for Software Performance TestingXBOSoft
 
Storytelling: Discover the Big Picture for Agile Efforts Webinar - Tom Cagley...
Storytelling: Discover the Big Picture for Agile Efforts Webinar - Tom Cagley...Storytelling: Discover the Big Picture for Agile Efforts Webinar - Tom Cagley...
Storytelling: Discover the Big Picture for Agile Efforts Webinar - Tom Cagley...XBOSoft
 
ASTQB w/ XBOSoft CEO Phil Lew: Agile and Waterfall - What Do Testers Do Diffe...
ASTQB w/ XBOSoft CEO Phil Lew: Agile and Waterfall - What Do Testers Do Diffe...ASTQB w/ XBOSoft CEO Phil Lew: Agile and Waterfall - What Do Testers Do Diffe...
ASTQB w/ XBOSoft CEO Phil Lew: Agile and Waterfall - What Do Testers Do Diffe...XBOSoft
 
When Agile is a Quality Game Changer Webinar - Michael Mah, Philip Lew
When Agile is a Quality Game Changer Webinar - Michael Mah, Philip LewWhen Agile is a Quality Game Changer Webinar - Michael Mah, Philip Lew
When Agile is a Quality Game Changer Webinar - Michael Mah, Philip LewXBOSoft
 

More from XBOSoft (20)

Agile Metrics to Boost Software Quality improvement
Agile Metrics to Boost Software Quality improvementAgile Metrics to Boost Software Quality improvement
Agile Metrics to Boost Software Quality improvement
 
Agile Test Management Using Jira and Zephyr
Agile Test Management Using Jira and ZephyrAgile Test Management Using Jira and Zephyr
Agile Test Management Using Jira and Zephyr
 
AI Based Test Automation Without AI
AI Based Test Automation Without AIAI Based Test Automation Without AI
AI Based Test Automation Without AI
 
What Aircrews Can Teach Software Testing Teams - XBOSoft Webinar w/Peter Varhol
What Aircrews Can Teach Software Testing Teams - XBOSoft Webinar w/Peter VarholWhat Aircrews Can Teach Software Testing Teams - XBOSoft Webinar w/Peter Varhol
What Aircrews Can Teach Software Testing Teams - XBOSoft Webinar w/Peter Varhol
 
Agile User Acceptance Testing - Incorporating UAT into Agile
Agile User Acceptance Testing - Incorporating UAT into AgileAgile User Acceptance Testing - Incorporating UAT into Agile
Agile User Acceptance Testing - Incorporating UAT into Agile
 
Challenges in Using Big Data for Software QA
Challenges in Using Big Data for Software QAChallenges in Using Big Data for Software QA
Challenges in Using Big Data for Software QA
 
Defect Patterns Analysis for Agile and Waterfall - XBOSoft Webinar with Micha...
Defect Patterns Analysis for Agile and Waterfall - XBOSoft Webinar with Micha...Defect Patterns Analysis for Agile and Waterfall - XBOSoft Webinar with Micha...
Defect Patterns Analysis for Agile and Waterfall - XBOSoft Webinar with Micha...
 
Proactive SQA™ Shifting Left w/Proactive Software Quality Practices
Proactive  SQA™ Shifting Left w/Proactive Software Quality PracticesProactive  SQA™ Shifting Left w/Proactive Software Quality Practices
Proactive SQA™ Shifting Left w/Proactive Software Quality Practices
 
Mobile Testing Challenges and Solutions XBOSoft Webinar
Mobile Testing Challenges and Solutions XBOSoft WebinarMobile Testing Challenges and Solutions XBOSoft Webinar
Mobile Testing Challenges and Solutions XBOSoft Webinar
 
Heidi Araya - XBOSoft Webinar Guest Speaker - Working with Remote Agile Teams
Heidi Araya - XBOSoft Webinar Guest Speaker - Working with Remote Agile TeamsHeidi Araya - XBOSoft Webinar Guest Speaker - Working with Remote Agile Teams
Heidi Araya - XBOSoft Webinar Guest Speaker - Working with Remote Agile Teams
 
XBOSoft webinar - How Did I Miss That Bug - Cognitive Biases in Software Testing
XBOSoft webinar - How Did I Miss That Bug - Cognitive Biases in Software TestingXBOSoft webinar - How Did I Miss That Bug - Cognitive Biases in Software Testing
XBOSoft webinar - How Did I Miss That Bug - Cognitive Biases in Software Testing
 
PSQT Keynote: Quality Challenges in the Internet of Things Era
PSQT Keynote: Quality Challenges in the Internet of Things EraPSQT Keynote: Quality Challenges in the Internet of Things Era
PSQT Keynote: Quality Challenges in the Internet of Things Era
 
7 Habits of Highly Effective Agile Testing - Test Istanbul
7 Habits of Highly Effective Agile Testing - Test Istanbul7 Habits of Highly Effective Agile Testing - Test Istanbul
7 Habits of Highly Effective Agile Testing - Test Istanbul
 
Managing Agile Software Projects With Risk and Uncertainty
Managing Agile Software Projects With Risk and UncertaintyManaging Agile Software Projects With Risk and Uncertainty
Managing Agile Software Projects With Risk and Uncertainty
 
Top IOT Testing Challenges Webinar with Jon Hagar
Top IOT Testing Challenges Webinar with Jon HagarTop IOT Testing Challenges Webinar with Jon Hagar
Top IOT Testing Challenges Webinar with Jon Hagar
 
Testing in Agile with Coaching Agile Journeys and XBOSoft
Testing in Agile with Coaching Agile Journeys and XBOSoftTesting in Agile with Coaching Agile Journeys and XBOSoft
Testing in Agile with Coaching Agile Journeys and XBOSoft
 
Using JMeter and Google Analytics for Software Performance Testing
Using JMeter and Google Analytics for Software Performance TestingUsing JMeter and Google Analytics for Software Performance Testing
Using JMeter and Google Analytics for Software Performance Testing
 
Storytelling: Discover the Big Picture for Agile Efforts Webinar - Tom Cagley...
Storytelling: Discover the Big Picture for Agile Efforts Webinar - Tom Cagley...Storytelling: Discover the Big Picture for Agile Efforts Webinar - Tom Cagley...
Storytelling: Discover the Big Picture for Agile Efforts Webinar - Tom Cagley...
 
ASTQB w/ XBOSoft CEO Phil Lew: Agile and Waterfall - What Do Testers Do Diffe...
ASTQB w/ XBOSoft CEO Phil Lew: Agile and Waterfall - What Do Testers Do Diffe...ASTQB w/ XBOSoft CEO Phil Lew: Agile and Waterfall - What Do Testers Do Diffe...
ASTQB w/ XBOSoft CEO Phil Lew: Agile and Waterfall - What Do Testers Do Diffe...
 
When Agile is a Quality Game Changer Webinar - Michael Mah, Philip Lew
When Agile is a Quality Game Changer Webinar - Michael Mah, Philip LewWhen Agile is a Quality Game Changer Webinar - Michael Mah, Philip Lew
When Agile is a Quality Game Changer Webinar - Michael Mah, Philip Lew
 

Mobile Performance Testing - Testing the Server

  • 1. Mobile Performance Testing - Part 2 – Testing the Server www.xbosoft.com
  • 2. Assumptions, Target Audience • This webinar will cover the role of the server in mobile performance, how to test for it, and what can be done. • Focus on mobile website performance • Performance testing of the mobile app/device was covered in a previous webinar. • Performance testing emphasizing the network will be covered in a future webinar – March 14 at 10 AM EST 2013 • Target audience – managers, developers, testers
  • 3. Agenda • Introduction: The Mobile Challenge • Differences between Mobile and Desktop usage • Know what is going on behind the scenes – 1st Step, a Simple Comparison Test – 2nd Step, a Simple Performance Test – 3rd Step, a Simple Load Test • Optimization Strategies • Conclusion
  • 4. Introduction: The Mobile Challenge • Mobile Internet usage is projected to pass desktop Internet usage in 2014 • Google found that a .5-1 second increase in page load time resulted in a 20% decrease in traffic and revenue. • Akamai found that the number of users who abandon a page after 3 seconds was 57%. • We expect the online experience to be as fast as our desktop experience, but it isn’t, and that is a problem. • Mobile is slower, but it doesn’t have to be.
  • 5. 2013 State of Mobile Testing Survey Differences Between Desktop and Mobile QA processes • 30% of mobile developers believe that the differences between mobile and desktop are significant enough to have different processes for development and QA. • An additional 25% don’t have different processes for mobile, but think that different processes for mobile are necessary. - 2013 State of Mobile Testing, XBOSoft • Report of the survey findings can be found at www.xbosoft.com/knowledge_center/ from March 2013
  • 6. What are the Differences between Mobile and Desktop?
  • 7. Differences between Mobile and Desktop Fat vs. Thin data pipe: Fat, high speed, Broadband data pipe The Cloud Thin, slow, 2.5G or 3G data pipe
  • 8. Differences between Mobile and Desktop Many Tower connections: • Jumping from tower to tower can slow down your connection by an order of magnitude.
  • 9. Differences between Mobile and Desktop Smaller, less powerful device: Your mobile device has a less powerful CPU, less RAM and a smaller screen resolution. The server needs to take this into account. Navigation: Your finger is used to navigate so touches have to be translated into clicks.
  • 10. Differences between Mobile and Desktop Downloading Strategies: • Some websites preload all the next level pages. – This can greatly speed up the user experience for the desktop, but for the mobile device, it takes up valuable bandwidth and can be costly. • Some anticipate what you might click on next and preloads those pages. Charging for Data Usage: • In many countries, data usage can be expensive.
  • 11. m.site vs. apps vs. full website Three approaches to making you website accessible to mobile devices 1. m.site – the most common approach + designed for mobile makes it faster and easier to read – two versions of your website – features missing or accessed differently cause user discontent 2. Mobile app – resides on mobile device + Highly optimized for that mobile device – User may not download app or keep it up to date 3. Mobile Accessible of full website + One version of website, common user experience – can compromise main website, harder to program
  • 12. Know what you are testing Proxy Servers: What are they? GPRS Website Server Internet Two Examples : Proxy • Nokia devices and Server • Opera mini browsers
  • 13. Know what you are testing Proxy Servers: How do they affect your testing? • Nokia devices and Opera mini browsers • Can reduce by up to 90% the amount of data transferred. • Speed and Cost savings can be considerable • most users will NOT access your servers through a proxy server • make sure you are testing in non-proxy server environments
  • 14. 1st Step, a Simple Comparison Test Simple load performance test on XBOSoft’s main page and several of its key pages. Not thorough, but a quick check. Of course an automated smoke test is preferred, but this is a quick fist step for those starting. Compare XBOSoft’s 1. full version website, xbosoft.com, from the desktop. 2. xbosoft.com, from the mobile device. 3. m.xbosoft.com, from the mobile device.
  • 15. 1st Step, a Simple Comparison Test 1. full version website, 2. xbosoft.com, on 3. m.xbosoft.com, xbosoft.com, on the the mobile on the mobile desktop device device
  • 16. 1st Step, a Simple Comparison Test • Download speed was reduced by 40% on the first download from the full website to the m. website. • However for a repeat download, the reduction in time was only 7%.
  • 17. Tools • Webpagetest – webpagetest.org – Quick and easy to start – Offers connection analysis, page loading waterfall analysis, first view and repeat view analysis, a report card and much more • Akamai has a simple test for your mobile device - http://mobitest.akamai.com/m/index.cgi – Doesn’t differentiate between first run and repeat runs with caching. – Very simple, but good for getting started • howtogomo.com – Quick and easy • Plus many, many more
  • 18. 2nd Step, a Simple Performance Test • Test with WiFi, take the network out of the equation. • The Network part of the equation will be discuss in Mobile Performance Testing Part 3: the Network • Goal is to make phone as fast as desktop without having network involved
  • 19. 2nd Step, a Simple Performance Test Test with webpagetest.org • It is free. • Run by WPO Foundation whose goal is to “support Web Performance Movement”. • A quick way to identify areas that are causing performance problems. • Mainly for desktop testing, but it good for a quick test for iOS or Android 2.3
  • 20. 2nd Step, a Simple Performance Test webpagetest.org provides • A summary. • The load times, for both first and repeat downloads. • Connection analysis. • Detailed look at each component downloaded. • Plus much more.
  • 21. 2nd Step, a Simple Performance Test
  • 22. 2nd Step, a Simple Performance Test Go to webpagetest.org and enter • Website url • Test location – choose from almost any where in the world • Browser/device For this Simple Performance Test, we chose • Website url – xbosoft.com and m.xbosoft.com • Test location – Dulles VA • Browser/device - iPhone 4 iOS 5.1 This will analyze the performance of your website, from this specified location and this specified device/browser.
  • 23. 2nd Step, a Simple Performance Test • First Byte Time – time for receiving first byte for the page. • Keep Alive Enabled – connection socket is kept open so that many objects can use it. • Compress Transfer – compress object types “JavaScript” or “text”. • Compress Images – compress object types “image”. • Cache Static Content – controls expiration of objects in cache. • CDN Detected – Content Delivery Network, Is a distributed system of servers being used? – to be discussed in detail in next webinar
  • 24. 2nd Step, a Simple Performance Test webpagetest.org Gives the same information as our ‘Simple Comparison Test’, but with an automated tools.
  • 25. First View for xbosoft.com Ten connection sockets were opened, many stayed open to retrieve many objects, which increases performance.
  • 26. First View – Waterfall of Objects • The number of objects requested is a lot for a mobile device. • To speed up the first download, many of the objects need to be combined. • The repeat download was so much faster because most of these objects were cached.
  • 27. Repeat View for xbosoft.com Dramatic decrease in connections and objects which resulted in dramatic decrease in response time.
  • 28. First View for m.xbosoft.com • The number of objects was cut from 50 to 20 • The number of connections was cut from 10 to 3
  • 29. Repeat View for m.xbosoft.com • Caching cut the number of bojects in half.
  • 30. 3rd Step, a Simple Load Test At a minimum, Simple Load Test should be done • start with a server that has been load tested for the desktop. • simulate the 500 desktop users. • add one mobile user at a time and monitor the effect on the server. Simulate 500 users Add mobile user 1 at a time
  • 31. Optimization Strategies • 80% of the time it takes for a web page to load is on the client side • The server has to change what it delivers to make the client’s job easier. Two main Strategies 1. Reduce transmissions 2. Reduce payload
  • 32. 1) Reducing the number of HTTP Requests Why will this help? - Round trip with a broadband connection can be 1-30 milliseconds - Round trip for a 2.5G or 3G network is usually 300-400 milliseconds (and it can be a lot worse). - Round trip for a 4G network is typically 200+. What can be done? – Consolidating Resources – Embed resources in html for first-time use – HTML5 Web Storage – Uni-directional server update
  • 33. 2) Reduce Payloads Why will this help? – Less data transferred, less time spent – If over device hw capacities, reducing payload can mean the difference between loading a page and a page failure What can be done? – Compress – Resize – Simplify
  • 34. Future Solution? Those that favor ‘making your full website more mobile friendly’ is the future solution because of 1) Moore’s Law for computer power and storage, and 2) Nielsen’s Law for Internet bandwidth.
  • 35. Conclusion • Test early, test often. • Best way to solve mobile performance problems is to prevent them. Don’t wait until after deployment to start worrying about performance issues. • You don’t need complicated, expensive tools to get started, a lot can be done simply. • No server performance testing will lead to disaster!
  • 36. Q&A Follow us on twitter: @XBOSoft www.xbosoft.com/knowledge_center/

Editor's Notes

  1. The mobile web is different than how you use the web on your desktop. When accessing an internet site, a web page is delivered from a server directly to your desktop through a high speed, broadband data pipe. But for mobile, the data pipe is much thinner.
  2. For a mobile connection, not only is the pipe much smaller, but the data has to pass from tower to tower before it gets to your mobile device. This is one of the reasons your mobile user experience can be up to 2 times slower than the desktop experience.
  3. Talk about India experience
  4. Opera Mini fetches all content through a proxy server and reformats web pages into a format more suitable for small screens. A page is compressed, then delivered to the phone in a markup language called OBML (Opera Binary Markup Language), which Opera Mini can interpret. The data compression makes transfer time about two to three times faster, and the pre-processing improves the display of web pages not designed for small screens.