Reputation: 63309
I am using selenium and firefox webdriver to test my website, it works well. The only problem is with the computing resource restrictions, I can only run 10 browsers simultaneously in one physical machine, which is not enough for our testing suite.
The big resource bottleneck is at firefox side, it will consume a lot of RAM and CPU when it's running. I am wondering if there is any technique to reduce the RAM and CPU usage so that in one machine I can run 100 firefox browsers in the same time. That will boost my efficiency a lot.
Any ideas?
Upvotes: 4
Views: 1925
Reputation: 25056
Selenium is not designed for performance testing, at all.
Selenium Grid can go so much to help you by ensuring the tests are done in parallel, but this is not what Selenium was created for, and the bottleneck of browser performance & RAM usage will be a problem with Selenium.
A better solution would be to use an application devoted to performance testing. I've used Redgate's solution as well as the performance testing solution integrated into Visual Studio 2010:
http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/
Upvotes: 3
Reputation: 14949
Assuming you want to test server load and are not relying on AJAX, you can use Apache Jmeter to bombard the server with random requests according to parameters you specify.
Because it's a headless browser that just requests some HTTP content and then throws it away, it can easily scale to 100 instances on a standard desktop.
Upvotes: 3