We've all been there at some point, you pour your heart and soul into your product only to have it shoved back in your face - 500 - System currently unavailable. We tell ourselves that it's ok to fail as long as we learn; but our customers tell another story. In this age of self service internet it only takes a couple of minutes to get up and running with a competitor product, so why should they wait for you guys to fix the bug?
This is why it's critically important to get your testing right, sure your developers do unit tests, integration tests and sometimes performance tests, often integrated into an continuous delivery environment. But wait - who is performing the End to End tests?!
If you're lucky you'll find an enlightened developer or a tester who is clicking through all the End to End scenarios step by step. As long as you don't release that often this might be all you need.
However if you want to increase the frequency of your deployments the only practical way forward is to automate most of your End to End tests. There is no reason to automate all of them because some are too complex, or just not automatable e.g. Applets, Flash. And moreover - it will not replace your developer or tester at all but it will definitely:
- reduce your release costs dramatically
- accelerate your release cycles
- make your customers happy again
Selenium is a great tool to automate your End to End scenarios. It comes with a library for almost every programming language. Selenium has constantly evolved since 2009, becoming less complex and has the advantage of being open source.
Interested in knowing what Selenium can do? We are an experienced team of engineers with many years of selenium experience. We would be delighted to help you getting started.