Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using a cloud service to stress test a web application

I am doing a research project regarding scalability. I have created a web app on Windows Azure and now need to test it with millions of users. I was thinking of doing the following:

  • Create a simple program which uses Selenium to send requests to the web app
  • Integrate this program as another Azure cloud service
  • Increase the instance count to increase the number of concurrent connections

The reason I want to use Selenium and not just send normal http requests is that I also need to test the app's Javascript. My questions are:

  • Is it possible to use Selenium as a Windows Azure worker role/virtual machine?
  • Can Selenium send multiple requests at once? I will be using multiple instances, however each instance will need to be able to generate about 2000 or more requests per second, is this possible?

Can this be done using Selenium or are there better ways of doing this? I've also seen JMeter but since it's in Java I don't think I can use it as an Azure worker role

Requirements: Generate 100 million hits in about 15 minutes-30 minutes I'm expecting to use about 40-50 instances on Azure which means each instance needs to generate about 2000 requests per second

like image 235
Matt Avatar asked Mar 09 '13 09:03

Matt


1 Answers

Selenium is good for functional testing, but AFAIK it simulates single user scenario.

JMeter is more suited for load testing.

However, if you are looking for a cloud based service that can do load testing , check out Blitz.io

Some other alternatives are (some require download)

  1. Soasta
  2. Neotys
  3. Loadimpact.com
like image 112
Srikanth Venugopalan Avatar answered Sep 25 '22 15:09

Srikanth Venugopalan