Welcome!

@DevOpsSummit Authors: Liz McMillan, Elizabeth White, Pat Romanski, Yeshim Deniz, Zakia Bouachraoui

Related Topics: Mobile IoT, Java IoT, Microservices Expo, Containers Expo Blog, Agile Computing

Mobile IoT: Article

Mobile Performance Testing: Demystified

A look at how to approach performance / load testing extranet mobile applications

How does the approach to performance / load testing extranet mobile applications change from testing other RIAs? In some ways, not much. Yes, the user activity for every mobile application will be unique, but the same goes for every web application. Different technology stacks, different deployments, different load patterns, different types of users profiles, and different content delivery… All make each web application, in its own right, unique. The approach to methodical performance testing for capacity planning and identifying scalability issues remains the same.

The mobile application could be a web site accessed via a URL or it could be a native mobile application loaded onto your device. The list of mobile devices keeps growing, but currently the most popular are Tablets, PDA’s, Droids, Blackberry, iPhone, iPad, Smartphones, etc. Supporting testing from these devices is important, but what’s even more important in your mobile load testing strategy is to generate traffic that represents the way users are actually going to access this mobile application. Whether it’s an ecommerce application being accessed via a Safari browser or an installed mobile app which makes webservice calls out to a feed, the load testing tool must generate the correct type of user connections and generate realistic load. This is the exact same challenge with testing non-mobile web applications as well.

Mobile applications are being developed and deployed rapidly, using a variety of cutting edge protocols and behaviors. The load tool must support the latest technologies in order to effectively address mobile apps. You need the ability to record a script either straight from the mobile device, from an emulator, or from a mobile browser. Handling behaviors such as asynchronous behaviors of PUSH technology becomes a requirement in many mobile applications. As important as the design of a performance test case scenario, now the load generation piece must either mimic the unique characteristics of mobile devices or have the ability to generate the load straight from the device. For example: headers, number of connection threads, etc. All these characteristics are important elements to emulate when conducting web and mobile performance testing.

What’s different about mobile? Mobile applications are being built using network efficiencies which aim in relying less on the intermittent characteristics of mobile networks. It is the variable network conditions that cause delays in response times which in turn affect the duration that ports or sockets are kept open — an environmental resource usage that is frequently seen with mobile applications. It’s because of this variable network connectivity that the user experience isn’t always an absolute known: the speed of the network depends on your device, your network plan (WIFI, 3G, 4G, ATT, etc), your geographic location, network connectivity, the network usage vs. bandwidth, and so on. Your load tool needs to have the option of emulating these bandwidth speeds to more accurately capture response times. Developers concentrate on what can be controlled: building efficient mobile apps which require less network overhead. There are many techniques to reduce the network traffic, all of which contribute to making responses less dependent on the network. “Conservation” is the approach of reducing network roundtrips by decreasing embedded requests, using local storage on the device for caching static files, enabling transfer compression, avoiding redirects, minimizing data content size, reducing number and length of cookies, removing lint from code (white spaces and comments), organizing the delivery for incremental rendering, aggregating requests and using PUSH behaviors. Creating lighter-weight mobile applications allows the overall end user experience to be less dependent on the device network vulnerabilities.

In the end however, the approach to load testing an extranet mobile application remains the same. You have goals: number of concurrent users, expected response times, load patterns etc. Using the right load tool, you can emulate this activity. You then identify capacity and saturation points and alleviate these bottlenecks in order to scale to a higher workload. You already know the drill for doing this and if you don’t, please refer to 11 Tips to Becoming a Better Performance Engineer. It sounds simple, but mobile performance testing is an interesting and vast topic so check back in for future posts on the subject from some of my colleagues.

More Stories By Rebecca Clinard

Rebecca Clinard is a Senior Performance Engineer at Neotys, a provider of load testing software for Web applications. Previously, she worked as a web application performance engineer for Bowstreet, Fidelity Investments, Bottomline Technologies and Timberland companies, industries spanning retail, financial services, insurance and manufacturing. Her expertise lies in creating realistic load tests and performance tuning multi-tier deployments. She has been orchestrating and conducting performance tests since 2001. Clinard graduated from University of New Hampshire with a BS and also holds a UNIX Certificate from Worcester Polytechnic Institute.

@DevOpsSummit Stories
"DevOps is set to be one of the most profound disruptions to hit IT in decades," said Andi Mann. "It is a natural extension of cloud computing, and I have seen both firsthand and in independent research the fantastic results DevOps delivers. So I am excited to help the great team at @DevOpsSUMMIT and CloudEXPO tell the world how they can leverage this emerging disruptive trend."
The current age of digital transformation means that IT organizations must adapt their toolset to cover all digital experiences, beyond just the end users’. Today’s businesses can no longer focus solely on the digital interactions they manage with employees or customers; they must now contend with non-traditional factors. Whether it's the power of brand to make or break a company, the need to monitor across all locations 24/7, or the ability to proactively resolve issues, companies must adapt to the new world.
You want to start your DevOps journey but where do you begin? Do you say DevOps loudly 5 times while looking in the mirror and it suddenly appears? Do you hire someone? Do you upskill your existing team? Here are some tips to help support your DevOps transformation. Conor Delanbanque has been involved with building & scaling teams in the DevOps space globally. He is the Head of DevOps Practice at MThree Consulting, a global technology consultancy. Conor founded the Future of DevOps Thought Leaders Debate. He regularly supports and sponsors Meetup groups such as DevOpsNYC and DockerNYC.
DXWorldEXPO LLC announced today that ICC-USA, a computer systems integrator and server manufacturing company focused on developing products and product appliances, will exhibit at the 22nd International CloudEXPO | DXWorldEXPO. DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, in New York City. ICC is a computer systems integrator and server manufacturing company focused on developing products and product appliances to meet a wide range of computational needs for many industries. Their solutions provide benefits across many environments, such as datacenter deployment, HPC, workstations, storage networks and standalone server installations. ICC has been in business for over 23 years and their phenomenal range of clients include multinational corporations, universities, and small businesses.
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a member of the Society of Information Management (SIM) Atlanta Chapter. She received a Business and Economics degree with a minor in Computer Science from St. Andrews Presbyterian University (Laurinburg, North Carolina). She resides in metro-Atlanta (Georgia).