简体   繁体   中英

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

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

The advantage of Selenium is testing with multiple browsers - because Javascript will break different browsers. JMeter will give you a lot of other nice functionality though.

We built a similar service for Amazon AWS. The service is free, and the load agents run on your AWS account as spot instances. Not sure how Amazon spot instance prices compare with Azure, but we were able to emulate 50,000 users on 200 m1.small instances for $2/hour. We released this service for others - www.redline13.com .

Since you tagged with C#, I assume you're using Visual Studio.

You should be able to accomplish what you want by using Visual Studio Online and Visual Studio Ultimate together. More details in here: Load test in the cloud to find performance issues

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM