What is Selenium?
There are lots of definitions out there depending on what lens you would like to use and depending on technical or business value-add. Some of the definitions I like are as follows:
1. Selenium automates browsers. That’s it!
3. Selenium is a set of different software tools each with a different approach to supporting test automation
4. Selenium is a library or represents a set of api’s that can be used to control a browser programmatically
Where do I start ?
The fact that you are reading this content means you have already “started”. Good Job ! Now read more and get your hands-on writing some code that is provided on this website (Of course you are welcome to dabble around internet too, whatever makes sense to you)
What is the programming language I need to know ?
Selenium api’s can be called in multiple programming languages and not limited to:
If you do not want to feel intimidated, then start with Ruby, click any of the tutorials above. Give it a try. Its free ya!
How do I choose a programming language?
Wonderful question ! Pat on your back for asking this question. It is true, that many of us think Selenium is a tool or a entire stack in itself. As mentioned above, Selenium automates browsers. The rest of the scaffolding (aka. framework) has to be built like managing data, environments, exception handling, reporting and so on and we have to rely on many libraries.
We have written an entire section on how to make a decision and also emphasized that programming language choice should be the entry point for making a decision towards a holistic Automation Solution.
What are Selenium Components?
1. Selenium IDE is a complete integrated development environment (IDE) for Selenium tests. It is implemented as a Firefox Add-On, and allows recording, editing, and debugging tests. It was previously known as Selenium Recorder
Scripts are recorded inSelenese, a special test scripting language for Selenium. Selenese provides commands for performing actions in a browser (click a link, select an option), and for retrieving data from the resulting pages
2. Selenium client API helps write tests in various programming languages.With Selenium 2, a new Client API was introduced (with WebDriver as its central component)
4. Selenium WebDriver is the successor to Selenium RC. Selenium WebDriver accepts commands (sent in Selenese, or via a Client API) and sends them to a browser
5. Selenium Grid is a server that allows tests to use web browser instances running on remote machines