Here QA Tester can find Selenium interview questions with examples. I started to put together and continuously update interview question for Selenium WebDriver test automation tool. This Interview questions were asked during real QA interviews for Selenium QA Automation Engineer position in the leading companies. I believe that any QA Engineer, no matter seasoned one or novice one, would greatly benefits from this collection Selenium interview questions and tips. If you are plan to attend an interview you need to know the answers on these questions by heart. I provided answers on several technical interview questions, but you have to think how you would personally answer these questions. Finally, I would ask anyone of you to provide answers on unanswered Selenium interview question, so we all would benefit from this knowledge sharing and it would help us to land on Selenium QA Automation Engineer job and work successfully. If you were asked the interview question that is not in the list, post it with your answer.

Common Selenium Interview Questions for QA Engineers

TOP SELENIUM INTERVIEW QUESTIONS including Selenium WebDriver interview questions
Last updated on June 12, 2017

  • What is Selenium?
  • Selenium is a suite of tools for browser automation. It is composed of "IDE", a recording and playback mechanism, "WebDriver" and Remote Control "RC" which provide APIs for browser automation in a wide variety of languages, and "Grid", which allows many tests using the APIs to be run in parallel. QA Tester should not forget to mention during interview that with the release of Selenium 2, Selenium RC has been officially deprecated in favor of Selenium WebDriver. It works with most browsers, including Firefox 3.6 and the last, latest and next release of Firefox (currently Firefox 17-19); Internet Explorer 6 and up; Google Chrome; Safari 4 and 5; Android Ice Cream Sandwich and onward; and Opera 11.6+.

  • Describe technical problems that you had with Selenium tool?
  • As with any other type of test automation tools like SilkTest, HP QTP, Watir, Canoo Webtest, Selenium allows to record, edit, and debug tests cases. However there are several problems that seriously affect maintainability of recorded test cases, occasionally Quality Assurance Engineers complain that it takes more time to maintain automated test cases than to perform manual testing; however this is an issue with all automated testing tools and most likely related to improper testing framework design. Another problem is complex ID for an HTML element. If IDs is auto-generated, the recorder test cases may fail during playback. The work around is to use XPath to find required HTML element. Selenium supports AJAX without problems, but QA Tester should be aware that Selenium does not know when AJAX action is completed, so ClickAndWait will not work. Instead QA tester could use pause, but the snowballing effect of several 'pause' commands would really slow down total testing time of test cases. The best solution would be to use waitForElement.


  • What test can Selenium do?
  • Selenium could be used for the functional, regression, load testing of the web based applications. The automation tool could be implemented for post release validation with continuous integration tools like Jenkins, Hudson, QuickBuild or CruiseControl.

  • What is the price of Selenium license per server?
  • Selenium is open source software, released under the Apache 2.0 license and can be downloaded and used without charge.

  • How much does Selenium license cost per client machine?
  • Selenium is open source software, released under the Apache 2.0 license and can be downloaded and used without charge.

  • Where to download Selenium?
  • Selenium can be downloaded and installed for free from seleniumhq.org

  • What is the latest version of Selenium components?
  • The latest versions are Selenium IDE 2.51.0, Selenium Server (formerly the Selenium RC Server) 2.51.0, The Internet Explorer Driver Server 2.51.0, Selenium Client Drivers Java 2.51.0, Selenium Client Drivers C# 2.51.0, Selenium Client Drivers Ruby 2.51.0, Selenium Client Drivers Python 2.51.0, Selenium Client Drivers Javascript (Node) 2.48.2

  • What is Selenium IDE?
  • Selenium IDE is a Firefox add-on that records clicks, typing, and other actions to make a test cases, which QA Tester can play back in the Firefox browser or export to Selenium RC. Selenium IDE has the following features: record/play feature, debugging with step-by-step and breakpoints, page abstraction functionality, an extensibility capability allowing the use of add-ons or user extensions that expand the functionality of Selenium IDE
Selenium

  • What are the limitations of Selenium IDE?
  • Selenium IDE has many great features and is a fruitful and well-organized test automation tool for developing test cases, in the same time Selenium IDE is missing certain vital features of a testing tool: conditional statements, loops, logging functionality, exception handling, reporting functionality, database testing, re-execution of failed tests and screenshots taking capability. Selenium IDE doesn't fit for IE, Safari and Opera browsers.

  • What does SIDE stand for?
  • Selenium IDE. It was a very tricky interview question.

  • What is Selenium Remote Control (RC) tool?
  • Selenium Remote Control (RC) is the powerful solution for test cases that need more than simple browser actions and linear execution. Selenium-RC allows the developing of complex test scenarios like reading and writing files, querying a database, and emailing test reports. These tasks can be achieved by tweaking test cases in your preferred programming language. Selenium RC has been officially deprecated in favor of Selenium WebDriver.

  • What are the advantages using Selenium as testing tool?
  • If QA Tester would compare Selenium with HP QTP or Micro Focus SilkTest, QA Engineer would easily notice tremendous cost savings for Selenium. In contrast to expensive SilkTest license or QTP license, Selenium automation tool is absolutely free. It means that with almost no investment in purchasing tools, QA Team could easily build the state of the art test automation infrastructure. Selenium allows developing and executing test cases in various programming languages including .NET, Java, Perl, RubyPython, PHP and even HTML. This is a great Selenium advantage, most likely your software developers already know how to develop and maintain C# or Java code, so they transfer coding techniques and best practices to QA team. Selenium allows simple and powerful DOM-level testing and in the same time could be used for testing in the traditional waterfall or modern Agile environments. Selenium would be definitely a great fit for the continuous integration tools Jenkins, Hudson, CruiseControl, because it could be installed on the server testing box, and controlled remotely from continuous integration build.




  • What is Selenium Grid?
  • Selenium Grid extends Selenium RC to distribute your tests across multiple servers, saving you time by running tests in parallel.

  • What is Selenium WebDriver?
  • Selenium WebDriver is a tool for automating web application testing, and in particular to verify that they work as expected. It aims to provide a friendly API that's easy to explore and understand, easier to use than the Selenium-RC (1.0) API, which will help to make tests easier to read and maintain by junior QA Testers

  • How many browsers are supported by Selenium IDE?
  • Test Engineer can record and playback test with Selenium IDE in Firefox.

  • Can Selenium test an application on iPhone's Mobile Safari browser?
  • Selenium should be able to handle Mobile Safari browser. There is experimental Selenium IPhone Driver for running tests on Mobile Safari on the iPhone, iPad and iPod Touch.

  • Can Selenium test an application on Android browser?
  • Selenium should be able to handle Android browser. There is experimental Selenium Android Driver for running tests in Android browser.

  • What are the disadvantages of using Selenium as testing tool?
  • Selenium weak points are tricky setup; dreary errors diagnosis; tests only web applications

  • How many browsers are supported by Selenium Remote Control?
  • QA Engineer can use Chrome, Firefox, IE, Safari and Opera browsers to run actual tests in Selenium RC.

  • How many programming languages can you use in Selenium RC?
  • Several programming languages are supported by Selenium Remote Control - C# Java Perl PHP Python Ruby

  • How many testing framework can QA Tester use in Selenium RC?
  • Testing frameworks aren't required, but they can be helpful if QA Tester wants to automate test cases. Selenium RC supports Bromine, JUnit, NUnit, RSpec (Ruby), Test::Unit (Ruby), TestNG (Java), unittest (Python).

  • How to developer Selenium Test Cases?
  • Using the Selenium IDE, QA Tester can record a test to comprehend the syntax of Selenium IDE commands, or to check the basic syntax for a specific type of user interface. Keep in mind that Selenium IDE recorder is not clever as QA Testers want it to be. Quality assurance team should never consider Selenium IDE as a "record, save, and run it" tool, all the time anticipate reworking a recorded test cases to make them maintainable in the future.

  • What programming language is best for writing Selenium tests?
  • The web applications may be written in Java, Ruby, PHP, Python or any other web framework. There are certain advantages for using the same language for writing test cases as application under test. For example, if the team already have the experience with Java, QA Tester could always get the piece of advice while mastering Selenium test cases in Java. Sometimes it is better to choose simpler programming language that will ultimately deliver better success. In this case QA testers can adopt easier programming languages, for example Ruby, much faster comparing with Java, and can become become experts as soon as possible.



  • Do you know any alternative test automation tools for Selenium?
  • Selenium appears to be the mainstream open source tool for browser side testing, but there are many alternatives. Canoo Webtest is a great Selenium alternative and it is probably the fastest automation tool. Another Selenium alternative is Watir, but in order to use Watir QA Tester has to learn Ruby. One more alternative to Selenium is Sahi, but is has confusing interface and small developers community.


  • Compare HP QTP vs Selenium?
  • When QA team considers acquiring test automation to assist in testing, one of the most critical decisions is what technologies or tools to use to automate the testing. The most obvious approach will be to look to the software market and evaluate a few test automation tools. Read Selenium vs QTP comparison




  • How can I learn to automate testing using Selenium?
  • Don't be surprised if the interviewer asks you to describe the approach for learning Selenium. This interviewer wants to hear how you can innovative software test automation process the company. Most likely they are looking for software professional with a good Selenium experience, who can do Selenium training for team members and get the team started with test automation. I hope this Selenium tutorial will be helpful in the preparation for this Selenium interview question.

to be continued

Selenium vs PhantomJS

PhantomJS can be termed as yet another powerful tool for testing. It supports varied web standards and it is developed with JavaScript API which permits webpage capturing, pages manipulation, access to file system and page settings.

Selenium Webdriver is an open source automation tool and definitely a great JavaScript automated testing framework which supports all operating systems and browsers such as Mozilla, Safari, Firefox, and IE. In addition, it runs multiple tests and supports programming languages such as Java, C#, Ruby, PHP, Perl and Python.

The goal of PhantomJS is different than Selenium Webdriver . The purpose of running tests with PhantomJS is to quickly identify the first possible problems, much like exploratory testing. Imagine if the web application is a web-based email client and QA Tester mistakenly break the sign in screen. It would save a lot of time if such sign in problem can be detected as early as possible before launching the extensive mail functionalities tests in a variety of web browsers.

This particular objective is achievable because PhantomJS can run quite well on the command-line and it has near-zero dependencies. It fits nicely during the development workflow, e.g. as part of git precommit hook, and also the initial testing stage in the build/continuous integration server. Since the latest PhantomJS already includes built-in support for WebDriver, it is also possible to run the exact same tests both with PhantomJS and with the typical WebDriver environment.

Selenium simply automates web browsers. PhantomJS is a headless browser that could be used to speed run the automated tests developed using either Selenium IDE or WebDriver. Execution speed is the key in PhantomJS.

Selenium is basically a suite of tools that are required for automating web browsers across multiple platforms. Packaged with the support of leading browser vendors, Selenium is being regarded as the core technology that’s used in an unlimited number of APIs, automation tools and frameworks.

Selenium Webdriver can be controlled by multiple programming languages and testing frameworks, it runs in multiple browsers and operating systems. Selenium permits an automated control of real browsers on real operating systems, thereby ensuring that the tests are too close to real user experience. Keep in mind Selenium bindings can be used for controlling PhantomJS, covering over ninety of the testing requirements. For extra powerful testing, Selenium permits QA Tester to set up additional browser connections without the need for altering even a single line of code.

Selenium vs PhantomJS conclusion:

PhantomJS and Selenium are two of the best JavaScript testing tools presently used by QA Tester. They are perfect in their roles, understanding their unique capabilities would help you decide which one to choose. If your intention is to execute multiple tests within a short period of time, then using PhantomJS would be a feasible option because with Selenium, it could be a time-consuming process. Another great advantage with PhantomJS is that as it is backed by command-line based usage, the JavaScript code of the website is sandboxed and not left on the screen. Therefore, it doesn’t interact with the principal tool.

On the other hand, PhantomJS wouldn’t be a good choice for web app testers as it serves as a single version of WebKit. In short if you prefer to use headless browsers for testing, QA Tester can choose either Selenium or PhantomJS, depending on your requirements. There is no superior framework. It depends on the QA Tester.

Selenium vs Protractor

Selenium or Protractor? What is better for testing a web application? Experienced QA Engineer could meet this Selenium interview questions quite often. QA Tester with 5 years of experience may propose Selenium for a web application rather than Protractor, while QA Engineer with no experience would prefer to automate the testing with Protractor and ditch Selenium. Who is right? Let’s answer on this QA interview question starting with definitions to avoid opinion-based solution:

Selenium is an open source suite of tools to automate web browsers across many platforms.

Protractor is an end-to-end open source test framework for AngularJS applications.

Selenium is considered one of the greatest test automation framework used for testing complex web based applications. Protractor is designed for applications built in AngularJS. While there is some support for using Protractor with non-angular web applications, test engineer would lose the awesome async functionality of Protractor while testing non-angular web applications

Technically speaking software engineer cannot compare Selenium vs Protractor, because software engineer cannot compare suite of tools with framework. It like comparing apples and pumpkins. So the summary would be the following:

Selenium works great for testing AngularJS, the only problem is dealing with synchronization issues.
Selenium is in fact a de facto tool in the open source market for browser automation.
QA Engineer can work with Selenium in almost every popular language.

Protractor Is marketed as AngularJS based automation tool but when you will look at its core its
wrapper for WebDriverJS.
Protractor has great advantage in case of AngularJS specific locator strategy and the tool provides more option to work with AngularJS directives
Protractor is only available for only one language, so to work with QA Engineer must know JavaScript.
Protractor is a new tool in the web testing market although based based on the WebDriverJS.

The correct answer on this QA interview question would be that Selenium or Protractor answer is totally depends upon the project requirement, team knowledge and management preferences. If your application is not built on top of angular, you can use webdriver on top of any other languages you prefer. It will not be smart to declare which has what advantage over other, both tool are great and help test engineer to make browser automation flawless and web sites more reliable.

Selenium WebDriver interview questions in practice

Ff you are a QA Tester and preparing for Selenium WebDriver interview questions then you should not only carefully go through all interview questions, but try to apply Selenium WebDriver in practice. The browser automation testing tool could help you to become a millionaire, like it happened with this software developer:

Valeriy Shershnyov is a former engineer turned "entrepreneur".

He spent a little over 10 years working as a software development engineer for various companies, including Microsoft. He went on to co-found a startup, Alteroxity, which claims to help authors publish ebooks that are already "done for you" -- that includes the writing, the creation, the publishing, and even "dozens of honest positive reviews".

The company appears genuine, according to public records, but its main source of sales is Shershnyov's catfishing scheme. To date, it's generated over $3 million in revenue.

For two years, Shershnyov has run a powerful and complex database, which was hosted on an Azure instance by Microsoft.

The server hosted a table containing 83,899 fake Amazon accounts (an easy feat given that, when we checked, Amazon doesn't verify email accounts). At any given time of the day, dozens of those accounts could be pushed through one of over 200 proxy servers -- provided by a third-party internet company -- which makes it harder for Amazon to detect the logins. The server installed the Selenium WebDriver, a browser automation tool, which simulates a real person typing in the accounts' usernames and passwords, one after the other.

Selenium vs QTP debate

Selenium vs QTP debate is over. Growing evidence indicates that Selenium WebDriver experience is a highly sought after skill. Opening for Selenium job overtook QTP jobs in 2011 and continue the trend.



So, if you are QA Tester serious about a career in software engineering field and you do not know anything about programming language like Java, Ruby, Python, JavaScript, learn one. However, you should be adept in automation technologies and for obvious reasons, you have to get Selenium WebDriver skills.

Related books reviews and recommendations

Tricky Selenium IDE interview question

Is Selenium IDE a good choice for automated testing?

Even QA Testers, who only started to work with Selenium, know that Selenium IDE is an integrated development environment for Selenium scripts implemented as a Firefox extension. It helps to perform some automated functional browser testing and allows QA Tester to record, edit, and debug tests. Selenium IDE is a great tool for simple test cases and not that suitable for complex scenarios, where it would be better to use Selenium Webdriver. In the same time IDE could be used for trivial automation testing, to repeat some routine and lightweight tasks that let your web application ready to be tested.

Keep in mind Selenium IDE is a prototyping tool for building test scripts. It is a Firefox plugin and provides an easy-to-use interface for developing automated tests. Selenium IDE has a recording feature, which records user actions as they are performed and then exports them as a reusable script in one of many programming languages that can be later executed.

Even though Selenium IDE has a Save feature that allows users to keep the tests in a table-based format for later import and execution, it is not designed to run your test passes nor is it designed to build all the automated tests you will need. Specifically, Selenium IDE doesn't provide iteration or conditional statements for test scripts. There is no plan to add such thing to the functionality of Selenium IDE. The reasons are technical and based on the Selenium developers encouraging best practices in test automation which always requires some amount of programming. Selenium IDE is simply intended as a rapid prototyping tool. The Selenium developers recommend for serious, robust test automation Selenium 2 to be used with one of the many supported programming languages like C#, Java, JavaScript, Objective-C, Perl, PHP, Python, R and even Ruby.

Selenium 2 Testing Tools: Beginner's Guide - Book Review

Selenium 2 Testing Tools: Beginner's Guide book review should be started with the author introduction: David Burns is a Senior Software Engineer in Test at Mozilla Corporation and has been doing test automation for many years. David is a Core Committer at Selenium Open Source Community and familiar with the tricks and issues that go with Selenium 2. After the success of the first edition of the book, David updated the wrote the second edition of this book in a fast-paced but friendly and engaging approach.

Selenium 2 Testing Tools: Beginner's Guide: Beginner's Guide will help QA Tester start with testing web applications using Selenium from scratch. It covers the wide variety of topics from setting up the Java environment to running tests on mobile devices, it contains all the information to get a beginner up and running on using Selenium 2. An essential overview of the WebDriver is presented next followed by migrating test cases from Selenium RC to Selenium WebDriver. Once all the tests have been created the book guides how QA Tester can speed up the execution of automated test cases by running them in parallel and reduce build time using Selenium Grid. The book is created in the guide style which emphasizes the concept of learning by doing and it is full of examples and code samples.

Technical Book Details:

Title: Selenium 2 Testing Tools: Beginner's Guide
Author: Alan Berg
Publisher: Packt Publishing
Paperback : 212 pages
ISBN : 1849518300
ISBN 13 : 9781849518307

Related books reviews and recommendations