Mobile applications (or apps) are the current trend in the evolution of software development where mobile devices become the client device rather than a PC. Load testing of mobile apps requires some specific practices. The Methods & Tools magazine a published in its last issues a series of articles about this topic. The articles were targeting each a specific component of the mobile software ecosystem: the device, the server and the network.
The first component of the mobile software ecosystem is the client application that could be either a native application designed specifically for the device operating system (iOS, Android, Windows) or a web application that runs inside a browser on the mobile phone. Load testing the client side of the mobile apps requires having multiple cases that will depend on the customer profile, the type of the application and the type of device. There are many tools like Quadrant Advanced made by Aurora Softworks that allows performing this part of the load testing activity.
The second component of the mobile software ecosystem is the server code. It might seem that this activity shouldn’t be very different than testing the server side of a web side. There are however differences between the two situations. The data pipe between the server and the device is thinner that in the case of the web. There is also less power on the device side than on a PC. This is why you can often see a specific version of a web site for mobile clients. To perform the load testing of the server side of mobile apps, you can start by using some free web sites, like Webpagetest.org that will allow you to test your server simulating certain conditions.
Finally, the third component of the mobile software ecosystem is the network. Speedtest.net is a tool that is can be used for this activity. It has a native mobile application for both Android and iOS and can measure ping time, upload and download speed. The network performance is still impacted by the application and the way it sends data over the network. The situation is different if you are operating on a 3G or a 4G network. These tests often lead to modify the architecture of the application to minimize the amount of data transferred on the network.
References
* Testing Performance of Mobile Apps – Part 1: How Fast Can Angry Birds Run?
* Testing Performance of Mobile Apps – Part 2: A Walk on the Wild Server Side
* Testing Performance of Mobile Apps – Part 3: The Network