We are building server side GCM and ApplePush application. And I need any ideas on how to perform load testing of our server against GCM and real devices. Sure, I can get 10 or 20 android phones and just spam them. But if there is way to simulate bunch of devices and get stats it would be realy great. My real scenario is to push aboun 1mln messages per day(don't bother we a ready to the volume), and I want to be sure that we are doing things right
Also would be appriciat of any ideas in functional testing, mainly hits-and-tricks.
The same questions for ApplePush.
2 Answers 2
1) Here's a good guide to send a single push notification using Python (look at "Step Five" and "Step Four" sections).
2) In order to send multiple messages at once you can use the simple bash script, like this
for run in {1..10}; do
python ~/test_push.py
done
P.S. More solutions:
- Instead of python script you can use this bash script for Android (there's also Ruby example how to send push to APNS).
- Also you may look at django-push-notifications library.
As far as I know and according to my experience with load testing , When you are going to test any mobile application, you will need to put load on web service of particular function.
For load testing I recommend you to use : Jmeter-Load testing
For functionality testing you can use : Selendroid & Appium
Above all are open sources. If you want to do load testing of 1000+ users then you can use cloud system. There are many good provides available. In my mind best is : Blaze meter
For layout testing I recommend you check app. in real diff. devices.