I'd answer that the best way to manage user expectations (and to avoid performance failure) is by proactively incorporating planning, testing and performance optimization early in the software development lifecycle, before applications are deployed. It is essential to consider user experience as well as back-end server capacity and scalability. Accounting for the network conditions is an absolute must.
Mobile Performance Testing
Mobile Performance Testing is a growing challenge, by the day. While one school of thought is that the devices from where the load it generated is not as important as the response time itself, there is another that it is equally important to generate load from mobile clients. Please share what works for you and if you need to summarize a strategy for it in 5 points, what would it be?
My point of view on this is as follows:
Testing from an acual client is not cost effice in terms of testing.
what the focus should be in is to ensure that a real device is used for the scenario recording.
this so that you can ensure that you mimic the real application behaviour. and to ensure
that you capture all information thats beening send by the application.
so my 5 points are:
1: Record from a real device
2: ensure a full application analysis is done
3: test using different connection speeds, ie 3g, 4g, wifi
4:test from all os/devices that the app will be running from
5: make sure you have the possiblity to apply your testing method for exmaple a/b testing.