There are three flavors of Selenium, which can be used in isolation or in combination to create complete automation suite for your web applications.
- Selenium IDE
- Selenium Core
- Selenium Remote Control
- The installation of Selenium IDE is only 316k.
- There are two phases to the testing process: Record your actions that the user would mimic, and create your HTML script to execute multiple Command sets.
- When you activate Selenium, it is in recording mode. At this point, whatever action you take on the browser, the IDE will record this. After everything is recorded, you can save the commands in a file.
- It can also record user actions in most of the popular languages like Java, C#, Perl, Ruby etc. But, in order the run those scripts, you need Selenium Remote Control.
- Selenium toolbar has one more button, called Selenium TestRunner. Test Runner gives you nice browser interface to execute your tests and also gives summary of how many tests were executed, how many passed and failed.
- As compared to most of the test automation tools it is very simple and lightweight.
Although, I didnt find much shortcomings of Selenium in my limited experience, but, users sometimes complain the following:
- Although, the online docs is sufficient enough, there is no way I can download it.
- must have a browser to run Selenium tests
- somewhat cumbersome to automate, requires a windowing system, external server and python scripting
- easily retargeting html table tests to different locations appears to be supported only in the IDE
- HTML table scripts alone may be somewhat limited for complex tests
Selenium provides a quick and powerful way to write functional tests for web applications and an environment where they can be run across different hosts. I am sufficiently impressed that I am looking for projects which could benefit from this approach. It works with other browsers so long as the Selenium Core is downloaded. Selenium makes writing automated acceptance tests real simple and almost fun compared to other testing tools.