Recommendations for Performance Testing iOS Native Apps?

@andyfrith asked a question on Slack this week that had a great set of responses :grin:

does anyone have any recommendations for performance testing iOS Native apps?

Any followed up by saying that they were interested in both single-user performance testing and distributed load testing.

Would you have any recommendations to share with Andy?

A summary of the first responses on Slack from @paulsbruce :

For single-user performance, there’s profiling tools built in to Xcode. This is what devs should use before committing code. https://indiestack.com/2018/02/xcodes-secret-performance-tests/

Swift also has some nifty measurement options: https://www.hackingwithswift.com/example-code/testing/how-to-write-performance-tests-using-measure

But really, Apple has documented this in “Write a Performance Test” section here: https://developer.apple.com/documentation/xcode/testing_your_apps_in_xcode

This is also a good article about the various profilers in Xcode https://www.avanderlee.com/debugging/xcode-instruments-time-profiler/

For load testing, it boils down to:
A) what are your goals for the test (e.g. when X# users are using it…how/where does this affect the UI, which underlying APIs don’t scale well, etc.)
B) how many sessions do you need to simulate
C) what kinds of metrics and signals do you need about the app while it’s under pressure to release?

2 Likes

Just in case someone wants to blame the originator of the above, it was me. Happy to keep the chat going.

1 Like

Ah excellent Paul! Couldn’t find you in a search to tag you in, I’ll edit the post now to correctly attribute you :slight_smile:

1 Like