Selenium is a suite of software tools to automate web browsers.
- A suite of Software Tools: means a set of one or more tools together.
- Automate Web Browser: This means only automating web-based applications, not for window-based applications and desktop applications.
What is the Selenium Tool suite or Selenium Component?
- Selenium IDE: Selenium integrated Environment.
- It is basically used for Recording and Playing.
- It can be used only with FF Browsers. This means we can not use it with other browsers.
- It is a FF Browsers Plugin, used to create and execute Test Cases.
Features:
- Create Test Cases, Test Suite (We can Record Test Cases)
- Enhance Test Cases (like add comments)
- Execute Test Cases, Test Suite one by one.
- Export Test Cases to any other supporting language (format) like Java, Ruby, etc.
Note: Selenium IDE Test Cases default format is .html
Drawbacks:
- It supports only FF Browser.
- Only Selenese commands are used.
- It does not support data-driven testing
- It is not suitable for complex test case design.
- Selenium RC: Selenium Remote Control Server: It is also known as Selenium 1.
- Selenium 1 = Selenium IDE + Selenium RC + Selenium Grid
- It is a server and launches all the browsers, but one at a time.
- It acts as an API and Library.
- Selenium Webdriver:
- The advanced version of Selenium RC is known as Selenium Webdriver.
- It is also called Selenium 2
- The limitations which are identified in Selenium RC are overcome and given added advantages.
- It supports various programming environments like JAVA, PHP, RUBY, etc.
- Using web element/ Objects/ locators/ properties web driver methods, we can create and execute Test Cases.
- It supports all the browsers like FF, Opera, IE, Safari & Chrome, etc.
- It supports various OS.
- We can use cross-browser testing.
- The default driver for selenium is FF Driver.
Advantages:
- Not necessary to start Selenium Server to run the Webdriver program.
- By default, it maximizes the browser and launches only the browser, not the command history browser.
- By default, Webdriver maintains the page load synchronization.
- If it is Page refresh, we need to handle it by using thread.sleep().
- We can use Webdriver & Selenium RC commands in a single class.
- Selenium Webdriver has a programming interface.
Note: Selenium IDE has an IDE (menu, menu item available) but doesn’t have a programming interface.
- Programming Language knowledge is a must.
- It doesn’t generate detailed test reports. It generates only a summary (Pass/Fail)
- Selenium Grid:
- It doesn’t support creating Test Cases
- It doesn’t for Test Case design
- It is only for Test Execution
- It supports II Test Execution
- Maximum of 5 browsers can be launched
- It is used to save time.
- It is used to execute tests across different browsers and different OS.
Note: Selenium Grid 2 supports Selenium RC test as well as Selenium Webdriver tests. It doesn’t support Selenium IDE.
- Selendroid:
It is used to test Mobile applications on the Android platform.
What are Testing Framework and other Tools used in Selenium Automation?- Testing Frameworks:
- JUnit Framework: It is a unit test framework. It is basically used by Developers. It doesn’t belong to Selenium Suite.
- TestNG Framework: It is used by Tester. It is also not a part of the Selenium Suite.
- Tools:
- Eclipse:
- It is used to create and execute Java programs.
- To add Webdriver .Jar File
- Install TestNG and JUnit Testing Framework.
- FireBug and Fire Path: Used as a plug-in with FF Browser to find out the web elements. We use inspect elements with IE.
- Browsers and Browser Drivers.
- Eclipse:
- Testing Frameworks:
If you have skills in PHP programming and you want to enhance your career in this field, a PHP certification from StudySection can help you reach your desired goals. Both beginner level and expert level PHP certification exams are offered by StudySection along with other programming certification exams.