As we have decided to share the total Selenium automation test series, this is our first tutorial of the “Selenium Automation Tutorials” series. In these tutorials, we will discuss the basics of Selenium Introduction, different components of Selenium, features, and limitations.
What is Selenium?
Selenium is a free, open-source automation tool that tests web-based applications on multiple browsers and platforms (operating systems). Most companies are using this tool for functional and regression testing.
Selenium is not a single tool. It’s a group of tools. Mainly, there are 4 components in Selenium: Selenium IDE, RC, WebDriver, and Grid. Selenium webDriver and Grid are famous among them. Different selenium components provide features like multiple browser support, parallel test execution capabilities, running the same test in multiple machines, and many other features.
Using selenium, we can automate all types of websites irrespective of the technology in which the application is designed. The performance and execution speed of this tool are much better than those of any other available tools on the market.
There are 4 components present in selenium that are:
- Selenium IDE (Integrated Development Environment).
- Selenium RC(Remote Control) – deprecated now
- Selenium WebDriver
- Selenium Grid
Let’s understand the use of each component one by one:
Selenium Integrated Development Environment (IDE) is one of the simplest frameworks in the Selenium suite, and it comes as a browser add-on for Mozilla Firefox and Chrome browsers, a record and playback tool. IDe has not supported the programming features, and for writing test scripts in Selenium IDE, selense language is used. If a test case is written in IDE, you can export to a different programming language like Ruby, Java, C#, etc. This tool also provides edit and debug options along with the record and playback. This tool is very helpful for beginners to understand Selenium syntax.
Advantages Of Selenium IDE
- It’s very easy to use and install
- It has an inbuilt test result report module
- To use this, no programming experience is required.
- You can create and execute test cases in Firefox and Chrome browsers.
- This allows users to create, record, or edit test scripts easily.
Disadvantages Of IDE
- You can not iterate the statements
- It does not support conditional statements
- It does not support error handling
- By using this, you can not do Database testing
- A User can use only Firefox and Chrome browsers.
- It does not provide the details of the execution report.
Selenium RC (Remote Control) is a tool used for web application testing. It supports multiple programming languages like Java, Ruby, Perl, PHP, Python, and C#. It also has multiple browsers like Firefox, Chrome, Ie, and others and supports multiple operating systems. Also, this is called Selenium 1.
It is the most important tool of the Selenium suite because it has many advantages of Selenium RC and IDE. You can run your script directly without manual processes like starting the Selenium server because there is direct communication between the code and the browser.
We have written a detailed post about selenium architecture; you can check it here:
- Selenium Web Driver Architecture
- Selenium Class Hierarchy In Details
It is used when we run our automation scripts in multiple browsers across multiple operating system machines simultaneously. It’s used for parallel testing. It is used for test execution.
- It allows us to run our automation tests on various web browsers, environments, and machines simultaneously and saves time.
- It helps test suite completion faster as we run various tests parallelly and can also perform cross-browser testing.
Advantages of Selenium
- It’s an open-source tool.
- It supports multiple programming languages.
- It supports multiple operating systems and browsers.
- It supports parallel testing.
Disadvantages of Selenium
- It Supports only web-based applications, and you can not test window-based applications.
- It isn’t easy to test image-based applications.
- It doesn’t have an inbuilt report facility.
- It does not support Captcha and Barcode readers.
- The tester should have good programming knowledge to write a selenium automation script.
If You want to add something, comment in the comment section.