Load testing is very different from functional and regression testing. The issue is one of being able to access system performance data, such as CPU usage, network saturation and latencies, disc (SD card) I/O rates and latencies, etc. This requires access to the OS, and in some cases may only be accessible via the device's J-TAG hardware interfaces. Each device family will be different. You won't use the same techniques with a Windows phone as you would an Android phone, Symbian, Tizen, etc.
Anyway, as a previous senior performance engineer at Nokia Mobile Phones (now Microsoft), I worked on a lot of this stuff. We didn't have on-phone support for performance analysis other than custom firmware code that would store relevant data in system variables. We had to have the phone collect that data by the browser and send it to our servers to analyze. We would run a new performance test whenever the phone firmware would be updated, and we had 3 experienced engineers who handled the phone-side of stuff. All tools were internal, so I can't discuss much of how they worked in practice - NDA's and all that...
So, if you need load/performance testing tools for a specific model of phone, or phone OS, then I suggest contacting the manufacturer as otherwise you are in for some long nights and weekends reverse-engineering their firmware.
We are working for android and iPhone app basically, so need to test the performance and load capabilities. We tried Jmeter using proxy server in android mobile, but getting error "Authentication via proxy server was unsuccessfull". Can u suggest some open source tool for the same.
JMeter can be used for mobile apps performance testing, it's built-in proxy can record mobile app traffic which can later be replayed with multiple concurrent users. See Load Testing Mobile Apps. But Made Easy. guide for implementation and configuration details.
First of all load testing mobile application has few specific challenges:
- Multiple devices: How can we properly measure the Real User experience of the device?
Is the device consuming too much CPU or battery with the native app?
- Many users from everywhere: as suggested leveraging the Cloud is important if you want to be able to generate the expected load from several geos
- Various network constraint: Each carrier is delivering different kind of network quality due to the latency, packet loss... etc The network constraint of mobile user is affecting the response time but also the architecture.
When it comes to validating the performance of mobile application you should have the following approach:
- use a protocol based to generate the load on the application
- leverage the cloud to generate the load from the expected geos.
- include network emulation to apply the right constraints on the architecture
- combine few users on a mobile testing tool to measure the real user experience
I advise you to try our solution: NeoLoad has all the features required to stress test and retrieve relevant metrics from the users and the architecture. It is a very easy to learn and very easy to implement solution and it has all the expected features. You'll have then more time to concentrate on learning the fundamentals of load testing.
Take a look! We have a free trial version that you can download from <SNIPPED URL>
Well, load testing tools there are just a number of them avialable as I have tried googling over the web and see what I got was actually a loads of then, anyway I am going to mention some of the load testing tools which I think are the best you can use Apache, Jmeter, LoadRunner, WebLoad, LoadUI, LoadStorm Cloudstrees.