Posted by: craigtech | January 26, 2010

Load testing in the cloud with BrowserMob

I’m currently looking at how we can improve our load test process to dial out some of the problems we have & also to extend the coverage of our load test.

Most organisations have the same problem when it comes to load testing – it’s done at a specific part of the project as a one time exercise & when complete the tests are left to rot until the next time a load test is needed, often months or years later when they bear little or no relation to the application under test any more.

Many of the tools available for web testing contribute to this problem by forcing you to work at the http layer, often resulting in brittle tests that break based on the smallest change to the implementation in the web application. Functional test tools like selenium provide a much easier to use abstraction, allowing a simple point a click browser experience to record & validate tests.  With a functional test suite in place surely a load test is just selecting the ratios at which those tests need to run to simulate your real/estimate usage patterns and away you go?  This has the added benefit of not needing to maintain two sets of scripts so that as long as you’re keeping your functional test suite up to date, your load test is being kept up top date pretty much for free. The problem is that operating at this layer of abstraction brings with it a significant performance overhead; instantiating browser instances for each simulated user in the load test.

Cloud computing/virtualisation is a game changer here; BrowserMob http://browsermob.com will import your selenium scripts & allow you to configure a load test in their system, running it for you on the Amazon Elastic Computing cloud.  This is a great option & I will be posting more on how our efforts in this area pan out, but moving forward maybe this type of technology can be brought in house too – being primarily a UK based organisation we have a significant infrastructure investment sized to deal with the peak load during the UK day (and the peak days of the year).  During the quieter times of year, and the quieter times of the day this infrastructure could be used instead of the EC2 cloud to run our load tests.  I’m not sure if BrowserMob are looking at this type of solution yet, but if not it’s only a matter of time before someone does…

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Categories

%d bloggers like this: