Over a million developers have joined DZone.

Mobile Performance Testing Using Monkop

DZone 's Guide to

Mobile Performance Testing Using Monkop

An overview of a new Testing as a Service offering for your Android apps.

Free Resource

Mobile marketing is expanding exponentially. All the enterprises, startups, governmental organizations, and all sectors have begun to deploy mobile apps to increase the customer base and retain business. It is crucial to validate functional and non-functional aspects of mobile apps. Every day new mobile devices are released into the market. Every week apps are updated in the app stores. It is getting tough to test the business scenarios for each and every device. This article explains how to run performance, security and functionality tests on real devices using Monkop.

What is Monkop?

Monkop offers testing as a service for mobile devices. Its offerings cover mobile performance, security, functionality, along with performance and security tuning. Here is the catch: Monkop claims that the testing will happen using real devices.

How to Use Monkop Service?

It is very simple to use the Monkop service. Go to www.monkop.com and drag on your apk file. That’s it. Enter your email and click on SEND ME THE REPORT button. Monkop will test your app and share the detailed report.

Sign Up

How it Works?

Basically Monkop installs the apk randomly (free plan) on different devices such as mobiles and tablets where it covers range of OS, screen size and resolution and make/model. It performs each action concurrently on identified devices with real data. It collects the performance metrics, bottlenecks, security vulnerabilities, and functionality checks.

Results Analysis

Monkop provide you with detailed results in HTML format where you can analyze your app performance, resource usage, power utilization, security, correctness, errors, and general information about the execution and its settings. Here are some sample results for your reference.

It provides general recommendations and tuning tips in the appropriate sections. The dashboard view provides you the execution table and API level chart as shown below.

Sample Result

Sample Result

Monkop Pricing Chart

Monkop has three types of plans: Solo, Basic, and Pro. The Solo plan allows testers/developers to test the app on randomly selected devices with 10 executions per month. Solo plan has low priority queue by means you do not know when your apk will be picked up and tested. I uploaded one sample apk file by 08.06 PM, I got the results by 08.43 PM. So it took around 27 minutes to get the results.



The Basic plan costs you $90 per month where you can test your app up to 5 devices with 5 executions per month which is very low. In Solo and Basic plan, you will not get basic security check and continuous integration. Your position in the queue will have medium priority in Basic plan.

The Pro plan costs you $349 per month which allows you to perform tests across 30 multiple devices with 30 executions per month. It also comes up high priority queue plus CI and basic security. There is a market dashboard coming soon to the plan. If your need doesn’t fit in above plans, you can contact sales team for the enterprise solution. Check the comparison chart over here.


  • No setup required
  • Easy to initiate the test
  • Impressive device coverage
  • Detailed results
  • Tuning advices


  • Very limited number of executions
  • No way to configure runtime settings
  • Not sure about the execution status as it is purely black box
  • No monitoring feature included
  • Supports only Android apps

Overall Monkop is a great tool for testers and developers where in one test we can cover the performance, security, and functionality. If it move on to support Apple, Microsoft, and Blackberry apps, it will create an impact over other industry standard mobile testing solutions.

Extra Tips:Currently Monkop is in beta feature.

mobile ,testing ,performance

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}