Welcome!

Continuous Integration, Continuous Delivery & Continuous Testing

Tim Hinds

Subscribe to Tim Hinds: eMailAlertsEmail Alerts
Get Tim Hinds via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Related Topics: Mobile Enterprise Application Platforms, Application Performance Management (APM), DevOps Journal

Article

Mobile Performance Testing | @CloudExpo #DevOps #IoT #M2M #ML #BigData

Simply ignoring mobile users during your performance testing is dangerous

If you read the title and assumed this post would be filled with baseball analogies, you'd be right! It's game day and all those fans who fill up major league stadiums, those are your application users. They are invested in the game and have shown up to watch the players (i.e. your application) perform.

Depending on how the game plays out, your audience will either head home elated or full of disappointment. The great thing is that in your case, unlike in the case of traditional baseball games, there doesn't have to be a loser. You can consistently ensure happy mobile users by setting yourself up for home runs and the crème de la crème, grand slams.

Despite the monumental importance of providing a seamless app experience for mobile users, companies still fall short in terms of mobile performance testing - some even choose to completely forgo the practice.

Striking out isn't any fun for you or your app users, but that's exactly what you'll end up doing if you ignore mobile users during performance testing. So here's the breakdown - from strikeouts to grand slams - of the steps you'll need to take to deliver exceptional application performance to all of your mobile users, regardless of device, network conditions and geographic location.

A Strikeout
Simply ignoring mobile users during your performance testing is dangerous. More than once, major brands have faced website outages on Black Friday, no less, due to unexpected spikes in mobile usage. You need a mobile performance testing strategy because people will access your application via mobile devices, whether or not you have a dedicated mobile app.

If you fail to test the performance of your application for mobile users, they may encounter slow load times and/or site outages. This results in an automatic strikeout. It's even possible that your poor application performance sends users running...straight into the arms of competitors.

A Single
Device Simulation

Hitting a single is nothing to be ashamed of, but it's nothing to write home about either. As it relates to mobile performance testing, hitting a single means you're simulating devices (i.e., using a software platform installed on a laptop or desktop that imitates a mobile platform or OS environment). This gives testers insight into how an application behaves on an emulated phone.

A Double
Device Simulation + Network Emulation

As you'll note, these build on one another. Hitting a double is a result of using both device simulation and network emulation. Unlike desktop and laptop users, mobile users will suffer from poor network conditions including limited bandwidth, latency and packet loss at a much greater rate. Using a tool to emulate different conditions in your testing scenarios is essential in understanding how your application performs when users face changes in connectivity.

Ignoring the various network conditions users will face in the wild will surely affect the end user experience, and not in a positive way.

A Triple
Device Simulation + Network Emulation + Real-Device Recording

To hit a triple, you'll need to incorporate recording from real devices. Could you record your test cases on the web version of your app and just use device simulation during your tests? Sure, but you need to know the web and mobile versions of your app inside and out.

While the calls to the backend may be the same for web and mobile versions of apps, mobile versions often don't have all the features of the web versions. This means you may be replaying actions a mobile user would never perform, and that could significantly skew your test results.

A Home Run
Device Simulation + Network Emulation + Real-Device Recording + End-User Experience Testing on Real Devices

Adding end-user experience (EUE) testing via real devices to your mobile performance testing strategy will earn you a home run! With EUE testing, functional test scripts will run on a real device while load testing is also being performed. Meanwhile, testers are able to measure the rendering times on the front end of the application so they can correlate backend times in order to quickly identify the root cause of performance issues.

A Grand Slam
Device Simulation + Network Emulation + Real-Device Recording + End User Experience Testing on Real Devices + Cloud Testing

To perform complete mobile performance testing and hit that grand slam, you'll need to add geographic realism to your scenarios by load testing from the cloud. Mobile users aren't accessing your servers from a single location and varying geographic dynamics can greatly affect the way load is placed on your application. To create the most realistic tests, use the cloud to distribute your load generators geographically based on historical user data - from where do they typically access your application?

Adding geographic realism to your performance tests will give you better insight into any performance limitations of your application.

Take Home the Win
Racking up some singles, doubles and triples never hurt, but mobile users (and fans) demand more. Any sign of application performance issues can quickly lead to revenue loss, brand damage and diminished employee productivity. As such, companies should, at the very least, invest in the development of a Home Run mobile performance testing strategy.

However, to come out on top and continuously deliver an exceptional application experience to mobile users, you'll need to adopt a Grand Slam strategy. We know that on your journey to complete mobile performance testing you may face some challenges. To learn how you can overcome these challenges check out our free whitepaper, "Addressing Mobile Load Testing Challenges."

Batter up!

More Stories By Tim Hinds

Tim Hinds is the Product Marketing Manager for NeoLoad at Neotys. He has a background in Agile software development, Scrum, Kanban, Continuous Integration, Continuous Delivery, and Continuous Testing practices.

Previously, Tim was Product Marketing Manager at AccuRev, a company acquired by Micro Focus, where he worked with software configuration management, issue tracking, Agile project management, continuous integration, workflow automation, and distributed version control systems.