Interview Questions on Selenium Fundamentals
1) What is Selenium?
• Selenium is an Open Source Software, used for Test Automation.
• Selenium is a suite of tools that automate web browsers.
• Selenium suite of tools are mainly used for Functional and Regression Testing of Web Applications.
• Selenium supports MS Windows, Linux, Macintosh etc… operating environments.
• Selenium supports Mozilla Firefox, IE, Chrome, Safari etc… browsers.
• Selenium supports Java, .NET, PHP, Perl, Python and Ruby languages for enhancing Test cases, We can use any one the language.
• Most of the Selenium testers using Java Programming Language.
2) When Selenium was launched?
• Selenium was first came to life in 2004.
• Selenium WebDriver was launched in 2006.
• In 2008, the whole Selenium Team decided to merge WebDriver and Selenium RC to form a more powerful tool called Selenium 2.
Selenium IDE + Selenium RC + Selenium Grid
Selenium IDE + Selenium RC + Selenium WebDriver + Selenium Grid
Note: Selenium RC is still being developed but only for maintenance.
• We can download Selenium Tools from www.seleniumhq.org website.
3) What is Selenium License?
All Selenium projects are licensed under the Apache 2.0 License, but It is Open source anybody can download and use selenium suite(Selenium IDE, Selenium RC, Selenium WebDriver and Selenium Grid) of tools with free of cost.
• Anybody can download and use Selenium tools.
• Anybody can update the source code and use.
• Selling updated code is not allowed, it is the primary objective of Apache License.
4) What are Selenium Tools or Selenium Components?
• Selenium IDE
• Selenium RC
• Selenium Webdriver
• Selenium Grid
5) What is Selenium IDE?
• Selenium IDE, IDE stands for Integrated Development Environment is a tool to create and execute test cases.
• It is a Firefox plugin and provides an easy-to-use interface for developing automated test cases.
Features of Selenium IDE:
• Record and Play back Test Cases.
• Execute Test Suites.
• Edit Test Scripts
Drawbacks of Selenium IDE:
• It supports Mozilla Firefox Browser only.
• Data Driven Testing (executing tests using multiple sets of test data) is not possible.• Test Results are not generated using Selenium IDE (It generates summary only).• Random Test Cases execution is not possible• Selenium IDE doesn’t support Flow control Statements.
• It doesn’t support programming (Conditional statements, loop statements etc…) for enhancing Test cases.
• It is not suitable for complex Test case design.
• It doesn’t support random Test case execution.
6) What is Selenium RC?
• Selenium RC(Remote Control) solves the limitations of Selenium IDE.
• It supports various programming languages like Java, C#, PHP, Perl, Python and Ruby languages to enhance Test cases.
Advantages of Selenium RC:
• It supports Random Test cases execution
• Supports Flow control statements and other programming features to enhance Tests.
• Supports various Browsers for Test case execution.
Disadvantage of Selenium RC:
• Test Case execution time is more because every client request first send to Selenium Server after that send to Browser.
• Executing Tests in parallel is not possible.
7) What is Selenium WebDriver?
• Selenium WebDriver fits in the same role as RC did and Webdriver overcomes the limitations of Selenium RC.
• It is a most important tool in Selenium suite.
• It is has programming interface allows us to create and execute Test cases against different browsers (ex: Firefox, IE, Google Chrome etc…)
• WebDriver supports various programming languages to enhance Test cases.
• WebDriver supports various operating environments to create and execute Test cases(Ex: MS Windows, UNIX and Macintosh etc…)
• WebDriver supports Data Driven testing, Cross browser testing.
• Webdriver is faster than other tools of Selenium suite.
• WebDriver supports Parallel test execution with the help of TestNG.
• WebDriver doesn’t have IDE, only Programming interface.
• WebDriver doesn’t have built in Result reporting facility, it provides summary only.(* with the help of TestNG we can generate HTML test reports.)
• No object Repository in selenium WebDriver (It is for entire Suite), so no centralized maintenance of Objects).
• Using Element locators, Webdriver methods and Programming features we can create and execute Test cases.
8) What is Selenium Grid?
• Selenium Grid is only for Test case execution, not used for Test design.
• Selenium Grid allows us to run our Test cases in parallel, different tests can be run at the same time on different remote machines.
9) What are the differences between Selenium and UFT?
Selenium and UFT (formerly QTP) both used for Functional and Regression Testing.
• Selenium supports Web Applications only where as UFT supports Desktop and Web Applications.
• Selenium is an Open source software but UFT is a Vendor tool.
• Selenium supports MS Windows, Linux and Macintose etc… operating environments but UFT supports Windows operating environment only.
• Selenium supports various programming and scripting languages (Java, .Net, PHP, Perl, Python and Ruby) for enhancing test cases but UFT supports VBScript only.
10) What are the Advantages of Selenium?
• It is an Open source Software, so License cost.
• It supports various operating environments (MS Windows, Linux, Macintose etc…) to create and execute Test cases.
• It supports various programming and scripting languages (Java, .Net, PHP, Perl, Python and Ruby) for enhancing test cases.
• It supports Cross Browser Testing.
• It supports Parallel Test Execution.
11) What are the Disadvantages of Selenium?
• It supports Web Applications Testing only, doesn’t support Desktop Applications.
• Since it is an Open source software, no reliable technical support from anybody.
• New features may not work properly.
• No centralized maintenance of objects/elements.
12) What are the Testing Frameworks used in Selenium?
• JNuit, TestNG etc … Testing frameworks used in Selenium.
• JNunit will help to execute Test Batches and generate Test Reports.
• TestNG framework is used to group Test cases, Execute Test suites, and generate Test Reports.
13) What about Selenium Certification?
• Since it is an open source software, No Authorized Certification for Selenium.
• Some organizations are conducting Selenium certification exam but no value guaranty for them in the IT Industry.
14) How to Configure Selenium?
First Choose Selenium Tools, Programming language and Testing framework for Test Automation.
Suppose we selected,
Selenium WebDriver for Test case design.
Java Programming language for enhancing Test cases.
TestNG framework for grouping test cases, executing Test suites and generating Test Reports.
• Download and Install Java
• Download and extract Eclipse IDE to create and execute Java programs.
• Download and Install Firebug and Firepath (Firefox plug ins) to inspect Elements.
• No pulg ins are required for IE and Google chrome browsers, they have built in developer tools.
• Download Selenium WebDriver Java language bindings from www.seleniumhq.org web site.
• Add WebDriver jar files to Java Project in Eclipse IDE.
• Download TestNG software from Eclipse IDE and Install.