0

While testing a new mobile application we were tasked to analyse performance. We already did some load testing at the backend.

However, now we would like to see which API calls take the longest to process on our actual device. Are there any tools that allows us to analyse this?

I checked out APM such as NewRelic and Crittercism which would be a great fit for our process. The thing is, we only want to use this in our QA environment.
Basically is there anything like NewRelic for only a couple different users?

EDIT: This is a native application.

1

Use Android Studio for taking such kind of profiling.

  1. Launch Android Device Monitor after connecting your debug device.
  2. Click on Start Method profiling
  3. Now, perform an activity that you would want to measure. Like, moving from one view to another that might also include some network communication with backend.
  4. Once the activity is completed, click on stop method profiling.

Now, with the report that you get out of it, you will be able to analyse the amount of time each method has taken to perform each of its activities. It would also tell you how much RAM was utilized in the process.

You should also note that the app would be slower while doing this debug, but basically you will get an idea of which threads are slower and which activities take longer time to react.

Hope this helps.

http://developer.android.com/tools/debugging/ddms.html has more details under Method profiling.

  • Thanks for the answer, this will help a great deal in our android testing. Do you know if there is anything like this for iOS as well? – Unknown Jul 24 '15 at 11:49
1

Kind of a late response but still, in addition to what Venky has suggested from an Android Perspective, there are several tools available for iOS as well. These tools come along with XCode Instruments.

1. CPU: A) Time Profiler B) Activity Monitor

2. RAM: A) Activity Monitor B) Allocations C) VM Tracker D)Leaks

3. Battery: A) Energy Diagnostics B) Batter Usage (available on the device)

4. Network: A) Network B) Activity Monitor

These tools are part of XCode Instruments and help with your entire profiling process.

0

If all you are interested in is how long an API call takes, just use PostMan.

If you want to view how long it takes on your physical devices than you can use an Android phone with Chrome and a iOS device with Safari. Once setup, you can use the Network inspector tab of DevTools to monitor your requests.

  • I forgot to mention this is a native application and thus the Chrome and Safari solutions are not achievable. I'll add this to my question. thanks for the PostMan suggestion tho. – Unknown Jul 24 '15 at 7:47
0

I would recommend using Apache JMeter tool (free and open source) to simulate concurrent mobile application users activity.

JMeter is capable of recording mobile traffic and replaying it with configurable number of virtual users. You can use either built-in HTTP(S) Test Script Recorder or Mobile Recorder service to capture the traffic.

  • Hi Dmitri thanks for your answer, we used this to test the http requests and measure our server performance. However now we are trying to see how our actual tablet/phone resources are doing. So we are trying to see CPU and RAM usage of each function on our actual phone or tablet. Not how the server responds to increased traffic – Unknown Jul 24 '15 at 10:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.