Skip to main content
Redhat Developers  Logo
  • Products

    Platforms

    • Red Hat Enterprise Linux
      Red Hat Enterprise Linux Icon
    • Red Hat AI
      Red Hat AI
    • Red Hat OpenShift
      Openshift icon
    • Red Hat Ansible Automation Platform
      Ansible icon
    • View All Red Hat Products

    Featured

    • Red Hat build of OpenJDK
    • Red Hat Developer Hub
    • Red Hat JBoss Enterprise Application Platform
    • Red Hat OpenShift Dev Spaces
    • Red Hat OpenShift Local
    • Red Hat Developer Sandbox

      Try Red Hat products and technologies without setup or configuration fees for 30 days with this shared Openshift and Kubernetes cluster.
    • Try at no cost
  • Technologies

    Featured

    • AI/ML
      AI/ML Icon
    • Linux
      Linux Icon
    • Kubernetes
      Cloud icon
    • Automation
      Automation Icon showing arrows moving in a circle around a gear
    • View All Technologies
    • Programming Languages & Frameworks

      • Java
      • Python
      • JavaScript
    • System Design & Architecture

      • Red Hat architecture and design patterns
      • Microservices
      • Event-Driven Architecture
      • Databases
    • Developer Productivity

      • Developer productivity
      • Developer Tools
      • GitOps
    • Automated Data Processing

      • AI/ML
      • Data Science
      • Apache Kafka on Kubernetes
    • Platform Engineering

      • DevOps
      • DevSecOps
      • Ansible automation for applications and services
    • Secure Development & Architectures

      • Security
      • Secure coding
  • Learn

    Featured

    • Kubernetes & Cloud Native
      Openshift icon
    • Linux
      Rhel icon
    • Automation
      Ansible cloud icon
    • AI/ML
      AI/ML Icon
    • View All Learning Resources

    E-Books

    • GitOps Cookbook
    • Podman in Action
    • Kubernetes Operators
    • The Path to GitOps
    • View All E-books

    Cheat Sheets

    • Linux Commands
    • Bash Commands
    • Git
    • systemd Commands
    • View All Cheat Sheets

    Documentation

    • Product Documentation
    • API Catalog
    • Legacy Documentation
  • Developer Sandbox

    Developer Sandbox

    • Access Red Hat’s products and technologies without setup or configuration, and start developing quicker than ever before with our new, no-cost sandbox environments.
    • Explore Developer Sandbox

    Featured Developer Sandbox activities

    • Get started with your Developer Sandbox
    • OpenShift virtualization and application modernization using the Developer Sandbox
    • Explore all Developer Sandbox activities

    Ready to start developing apps?

    • Try at no cost
  • Blog
  • Events
  • Videos

Mobile Apps Load Testing

January 26, 2017
Javier Perez
Related topics:
Containers
Related products:
Red Hat build of Node.js

Share:

    Mobile App development does not stop when you build your app and have a binary ready to be installed on the device. Regardless of how good your code is or how much unit and regression testing you performed, there are elements that need to be tested under different circumstances, for example, data traffic, the number of users, location, and high latency in the mobile network.

    At this point, what you want to test is app performance, which means “responsiveness” of your app, and one way to test is Load Testing. The testing will cover the different variables or circumstances unique to mobile apps.

    Another good reason to test your app performance or responsiveness through load testing is the user engagement factor, it is well documented that the attention span of mobile app users is very short, and many mobile consumer and enterprise apps are only used once and never used again because the performance was disappointing.

    You probably don’t need much more convincing, but here a few more good reasons:

    • The cost of failure, the cost of an unsuccessful app launch, think about that for a second.
    • Find the limits of your app, the maximum work capacity before performance degradation.
    • How is it going to perform on anticipated peak load conditions, for example, holiday sales that increase the app usage?
    • Identify scalability enhancements.
    • Improve architecture to remove performance bottlenecks

    Once you perform load testing and address any identified issues, you can complete your mobile app development and be confident to release your app in production.

    How to load test mobile apps?

    You can spend time and effort on writing complex scripts and tooling to generate load testing or use one or a combination of load testing tools, some of them open source.

    Here are some questions to ask when selecting a testing tool:

    • Can you load test with scripting on different programming languages and protocols?
    • Do the tools support your desired mobile platform (iOS, Android or Windows) or protocols?
    • Can you load test both client app and backend integrations?
    • Can you also include on-device testing?
    • Do you get log files, graphs, charts or other measurements?
    • Can you load test with different network bandwidths?
    • Can you integrate your load testing with CI/CD tools?

    How do you prepare for load testing?

    You can make load testing an ongoing task throughout your development lifecycle. Best practice is to involve not only your Developers and Testers but also your Operations team. In the case of hosted mobile platforms like Red Hat Mobile Application Platform, we highly recommend you provide advance notice to the Red Hat Cloud Operations team so they can monitor and be ready for potential traffic spikes and computing capacity limitations.

    Plan and decide what you want to test. It could be at different levels, for example, an increase of individual users/sessions accessing the app and/or repetitive use of the same function or service; individual performance of features and/or individual performance of backend integrations and API calls. All these tests will help you to narrow down and quickly identify performance issues or degradation.

    You also have to decide on what you are going to measure and how you are going to record those measurements, think beyond Response Time and Throughput, look for memory and CPU impact, memory leaks, and the performance from an app user’s behavior perspective.

    Load testing tools

    Here are some options recommended by developers doing load testing on mobile apps.

    JMeter (open source)

    One of the most used open source tools to load test mobile apps is JMeter.  You can build JMeter definitions that simulate a user logging and then interact with the backend. It can be used to simulate a heavy load on a server, network or objects to analyze overall performance under different load types.  It can also be used to perform functional tests on web apps, databases, LDAPs, web services, etc., and reports can be added to the GUI, even record, and playback scenarios. A popular feature is the ability to record JMeter scripts with a mobile device by connecting the device to a proxy that you set up inside JMeter. Once we set up this proxy, you can then connect the mobile device to it in an effort to test various iOS and Android mobile applications.

    Locust (open source)

    Locust is an easy-to-use, distributed, user load testing tool. It is intended for load testing websites (or other systems) and figuring out how many concurrent users a system can handle. Locust is completely event-based, and therefore it’s possible to support thousands of concurrent users on a single machine. In contrast to many other event-based apps, it doesn’t use callbacks. Instead, it uses lightweight processes, through gevent.

    BlazeMeter

    BlazeMeter is a self-service, on-demand, cloud-based load testing tool. You can write tests and code in a domain specific language (DSL) to generate and instantly run JMeter tests. It allows you to record real mobile device traffic and playback at any scale from any geographic region through real mobile network conditions.  It integrates with JMeter, Selenium, Gatling and Locust.

    SOASTA

    SOASTA Digital Performance Management platform provides key quality indicators across multiple devices with each version of your app. You can also automate mobile performance testing with SOASTA CloudTest and cover use cases using the same test across a range of real devices, Android or iOS, and see device-side metrics from build-to-build while applying load on the backend.

    LoadRunner

    LoadRunner is a load testing tool licensed by HPE, one of the key features is that it can create and handle thousands of users at the same time.  LoadRunner includes different tools:  Virtual User Generator, Controller, Load Generator, and Analytics.

    NeoLoad

    NeoLoad by Neotys offers an unlimited number of tests, HTTP/S & SOAP protocols support, pay-per-use cloud platform load generation, Continuous Integration Plugins, and monitoring.  Providing a scriptless design and visual programming, and recording of mobile apps native or hybrid.

    PerfectoMobile

    Perfecto offers a cloud-based, mobile enterprise application performance and monitoring solution. They allow access to many mobile devices in a secure and governed environment. You can analyze visual reports, logs, and video recording of test runs. Testing environments include real devices under real user conditions including battery constraints, memory shortage and switch-offs between Wi-Fi and cellular.

    Apica

    Apica enables load testing by device type (iOS, Android or Windows), large volume tests, user scenario recording with HTTP/S support and custom network speeds. Apica mobile load testing network is built on 50+ co-locations around the world with cloud cluster.

    Sandstorm

    Sandstorm supports protocols for the Web, Mobile, and Email. It facilitates test from multiple locations, across browsers and simulates cache with a rich extensible framework for modification of test cases by using JavaScript and core Java APIs.

    It provides a User Interface for handling dynamic parameters and automated cookies. It also integrates resource monitoring for most of the popular Web applications and Database servers.

    LoadImpact

    LoadImpact is an online load testing tool used to test the performance of websites, web and mobile apps, and APIs under load and across various platforms. The tool enables you to conduct tests online instead of having an offline platform in place. While the testing process is fast, the user can also repeat the tests easily and within a shorter time span.

    Monkey

    Monkey is an Android only program that runs on an Android emulator or device and generates pseudo-random streams of user events such as clicks, touches, or gestures, as well as a number of system-level events. You can use the Monkey to stress-test applications that you are developing, in a random yet repeatable manner.

    Hockeyapp

    Hockeyapp is a set of tools created by Microsoft to manage and report iOS/Android/WinPhone/OSX app crowdsourced/beta testing. It integrates the open source HockeyApp SDK for Android, iOS, Mac OS X, Win, Unity, Xamarin and then uploads the app’s build to HockeyApp.

    It reports metrics presenting which devices were tested, by whom, how long the app was used, the language tested, and more.


    Red Hat Mobile Application Platform is available for download, and you can read more at Red Hat Mobile Application Platform.

    Last updated: October 31, 2023

    Recent Posts

    • Why some agentic AI developers are moving code from Python to Rust

    • Confidential VMs: The core of confidential containers

    • Benchmarking with GuideLLM in air-gapped OpenShift clusters

    • Run Qwen3-Next on vLLM with Red Hat AI: A step-by-step guide

    • How to implement observability with Python and Llama Stack

    Red Hat Developers logo LinkedIn YouTube Twitter Facebook

    Products

    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform

    Build

    • Developer Sandbox
    • Developer Tools
    • Interactive Tutorials
    • API Catalog

    Quicklinks

    • Learning Resources
    • E-books
    • Cheat Sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site Status Dashboard
    • Report a security problem

    RED HAT DEVELOPER

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2025 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility

    Report a website issue