Mobile app performance testing is the process of testing and reporting the time it takes your application to process a request or take an action – especially when large groups of users perform the same or similar action simultaneously.
Performance testing answers the question, “When and where does the performance and speed of my application degrade the user’s experience?” It also answers the question, “How many users can I have before my application crashes?”
Performing “At Scale”
“At Scale” is the current lingo for “many, many, many users and transactions”. Performing “At Scale” is a big concern when building software and especially mobile apps. Mobile app performance testing helps you understand the scale your mobile app can withstand before degrading or crashing. Most software development teams invest significant time and money engineering their mobile apps to perform at scale from the very beginning. This is generally a wise investment but only if you are willing to apply mobile app performance testing throughout the software development process. Otherwise, the software development team will not have the feedback they need during the software development process to measure and correct the scaling assumptions they had to make while building your software.
Performing “Good Enough”
If “At Scale” is not a critical business and technology driver for your mobile app, you still might need to be concerned about performance and mobile app performance testing.
- All mobile applications have performance limits
- When mobile application performance degrades and slows down, users abandon mobile apps.
You’ve invested serious time and money building your mobile application. Don’t you want to know how many people you can satisfy with your mobile application before they become dissatisfied?
There’s a big difference between engineering and performance “At Scale” and “Good Enough”.
Engineering and mobile app performance testing “At Scale” is an ongoing endeavor to insure that your mobile application will always be available to as many users as possible. This is an expensive process but worth it when your goal is performing “At Scale”.
Mobile app performance testing for “Good Enough” is an end-of-cycle process that determines “How many users can I handle before I need to turn on more servers?” This is a much simpler and less expensive process that gives you a finite number and an alert for when you need to add more servers in your AWS or Rackspace cloud.
If you aren’t required to engineer, build and deliver “At Scale”, then “Good Enough” may work best for you. A short engagement to determine “Your Maximum Number” will help you recognize and avoid a disaster where your mobile application performance degrades and you lose customers. You’ll use “Your Maximum Number” to alert you to add more server capacity before your known performance threshold and prior to any perceived slow downs by your customers.
What Does Mobile App Performance Testing Look Like?
Mobile app performance testing is a simple process but it’s not easy. Here’s one way of looking at the process:
- Build your mobile app features
- Add “Instruments” at locations within your mobile app that will measure throughput
- Build or find a “Pump” to push specific user scenarios through your mobile app
- “Load” the “Pump” with one or more test cases or user scenarios
- Tell the “Pump” the volume and timing of test cases to push through your mobile app
- Record the readings from the “Instruments” as the “Pump” pushes a measured volume of test cases through your mobile app.
- Analyze the readings from the “Instruments” to determine if
- throughput performance was acceptable – add more volume and retest
- throughput performance was not acceptable – determine bottlenecks to discuss with your mobile app developers to fix for greater throughput.
Simple But Not Easy
Yeah, it’s simple but it’s not easy. Generally speaking, finding the “Pump”, placing the “Instruments” and building the “Load” of test cases is straightforward. You’ll wind up with a big pile of data from the instruments and you’ll have some early anecdotal evidence of how your mobile application performs under a load.
But, it’s seldom actually that simple because mobile applications almost never just fail due to a high load. It’s the nuances of what happens under one set of load circumstances that look just fine and another set of load circumstances that crashes your mobile app. This is when a trained and experienced Performance Testing Engineer can really help you and your software development team quickly find, test and fix the performance bottlenecks in your mobile application.
Mobile app performance testing can be a critical component of testing and launching your mobile app. Not every mobile app needs performance testing, but when you expect a large volume of users or heavy usage, mobile app performance testing by experts can save you from a major crash and downtime where you can lose customers and prospects.
Look Before You Leap
You want good testing results, of course. Or put another way, you want good testing value. That’s why it’s crucial to define the mobile testing strategy first, which includes performance testing, before thinking about a test plan.
Defining The Mobile App Performance Testing That’s Right For You
Want to discuss your situation? Call me 888-254-9709. Or, click the blue and green button on this page to request a call back.