Someone rightly said “If you automate chaos, all you get is faster chaos.” Selenium Automation tool – one phrase & you can either make the opportunity or lose one. The most talked-about technology in Software Testing industry. For most of the people, what is Selenium Automation tool? Yeah! I know, something related to automation. But it needs Java, and I don’t know it. Blah! Blah! Blah! Let’s see what Selenium Automation tool actually is.
Selenium (meaning ‘Moon’) is a chemical element with symbol Se and atomic number 34. It is a nonmetal with properties that are intermediate between the elements above and below in the periodic table, sulfur and tellurium. It rarely occurs in its elemental state or as pure ore compounds in the Earth’s crust.
🙂 Shocked? Surprised? Haha..!
Just kidding 🙂 ‘Selenium’ is ‘also’ a chemical element, but we are not here to discuss the element. For us – ‘Selenium automates the browser’. Yeah! Whatever you do in a browser can be automated via Selenium Automation tool. There are other tools as well in the market, then why is Selenium so popular? Coz its ‘Free’, ‘Open Source’ as we call it!
The evolution of Selenium Automation tool
Soon after another ThoughtWork’s engineer, Paul Hammant, created a server that will act as an HTTP proxy to “trick” the browser into believing that Selenium Core and the AUT come from the same domain. This system was called Selenium Remote Control or Selenium 1. Whoaa! Remote control your web browser with Selenium. Great!
Three years later they recognized some limitations with Selenium RC, hence Simon Stewart developed ‘WebDriver’ in 2007. Unlike RC, the WebDriver doesn’t need a dedicated server to execute tests. In 2008 Patrick Lightbody launched ‘Selenium Grid’ – a network of automation tests running on different machines. Isn’t it amazing? No need to mention that it resulted in multi-fold rise in test execution efficiency.
In 2009, Selenium & WebDriver were combined in what would revolutionize the Software Testing community – Selenium 2.0 OR popularly known as Selenium WebDriver, the way we know Selenium Automation tool today!
A mail by Simon Stewart – “Why are the projects merging? Partly because WebDriver addresses some shortcomings in selenium (by being able to bypass the JS sandbox, for example. And we’ve got a gorgeous API), partly because selenium addresses some shortcomings in WebDriver (such as supporting a broader range of browsers) and partly because the main selenium contributors and I felt that it was the best way to offer users the best possible framework.”
Selenium Webdriver brought some of the brightest minds in test automation under one roof. And then the hunger grew. Since then there is no looking back – support for multiple programming languages and operating systems has been added to Selenium Automation tool!
But Record-&-Run was simple!
For the rival HP UFT lovers, this is the biggest argument. Counter-argument is known as ‘Selenium IDE’ – a Firefox Add-on created by Shinya Kasatani of Japan which can record every step performed and then can be executed n number of times. But it do has some limitations – only Firefox support, no error handling, how do you do database testing, etc. Selenium IDE is simply intended as a rapid prototyping tool. Shinya donated Selenium IDE to the Selenium Project in 2006.
But I don’t know JAVA…
Don’t worry. Selenium Automation tool won’t give you any excuses to make – it supports multiple languages like C#, Java, PHP, Python, Ruby etc. You can pick the language of your choice. It doesn’t matter in which language your application under test (AUT) is built.
Note: Selenium with Java is recommended because JAVA itself is a very powerful & commonly used language.
Selenium benefits – It’s all about the flexibility!
This is perhaps Selenium’s greatest strength when compared with other automation tools. In addition, since Selenium Automation tool is Open Source, the source code can always be downloaded and modified.
- Selenium WebDriver supports Google Chrome, Internet Explorer, Firefox, Safari, Opera, Android (with Selendroid or Appium) & iOS (with iOS-driver or Appium).
- Multi-language support
- Selenium deploys on Windows, Linux, and Macintosh platforms.
The entire suite of Selenium Automation tool results in a rich set of testing functions specifically geared to the needs of testing of web applications of all types. Selenium Automation tool is probably the best option for automated testing of Websites today. It is becoming increasingly popular and it is the first choice of automation testers as well as organizations for automating the testing of Web-based applications for both the GUI as well as the functionality. Now that you know what Selenium Automation tool is, the next step would be to install & start automating!
Trivia: ‘Selenium’ the chemical have a connection to ‘Selenium Automation tool’. The name Selenium comes from a joke made by Huggins in an email, mocking a competitor named Mercury, saying that you can cure mercury poisoning by taking selenium supplements. The others that received the email took the name and ran with it.