Software development teams are constantly shifting, which means testers’ roles have to evolve along with them. As we’ve seen more teams go towards Agile, DevOps, and CI/CD, testers are encouraged to concurrently take on skills that better support these workflows and help with faster testing.
One of those skills is Selenium. As more software testers take on test automation and begin to shift left, Selenium testing is one of the most popular strategies, and a comprehensive knowledge of the tool is foundational to creating tests that provide the team with productive feedback and insight. While Selenium is a tool that can benefit from continuous learning, there are certain things that interviewers will want to make sure you know when you’re applying for you’re next role in automation.
To better prepare for that upcoming interview, here are the top Selenium interview questions you can expect to be asked.
Explain the different Selenium components.
It’s important to be able to prove you know the full breadth of Selenium beyond writing a script. Selenium has an entire suite of tools that are used for a different capability. Review the history of Selenium to fully understand the differences between IDE, RC, WebDriver, and Grid.
Do you know the difference between Selenium 1 and 2? How about the programming languages and browsers it supports? Knowing the tool and rounding out your understanding of how it works will be something that employers value.
What’s your experience with Selenium?
Be able to talk about the different test cases that you use Selenium for. What worked well in your last role, and how do you identify a good case for automation? Is there a time that you automated something you shouldn’t have, and what did you learn from it? What automated tests have you cut out of your suite because they weren’t valuable? How many tests did you automate? Do you have experience using a tool to run Selenium in the cloud?
Giving an in-depth look into the breadth of your experience will help your interviewer understand your qualifications.
What are the advantages of Selenium? What are the most common Selenium challenges?
There are plenty of reasons that people gravitate towards Selenium. Have an answer for why people would choose it over other test automation tools and what it can help accomplish.
However, Selenium also has its challenges. Flakiness, dynamic content, reporting, mobile testing, and captcha are a few things that may come to mind when you think of these limitations. Know which ones have solutions and how to implement them, and know which mean testing is better of done manually.
What should Selenium be used for? What shouldn’t it be used for?
Going off of the last question, you should have a comprehensive knowledge of which tests should be automated and which are better off done manually.
When do you use Waits and Sleeps?
Knowing the proper use of explicit wait, implicit waits, and sleeps is key to reducing flakiness in your tests, which is undoubtedly something your future employer will care about — no one wants false positives and negatives.
Be able to talk about the difference between implicit wait and explicit wait and sleep, when to use each one, and how.
How do you handle common commands?
To verify your basic knowledge of Selenium commands, it’s expected an interviewer might ask you how to:
- Launch a browser
- Drag and drop
- Send keys
- Find an element
- Close and quit
- Handle pop-ups
- Navigate back and forth
- Switching tabs
- Minimize and maximize windows
Check out our Selenium toolkit for tutorials on these commands and more.
What is Page Object Model and Page Factory?
To get more readable maintainable Selenium tests, you need to have a structure that likely involves design patterns including Page Object Model and Page Factory Object.
You should be able to speak to what they are, the differences between them, why they’re important, and how you use them.
What’s your process for reporting?
Because Selenium has limited reporting capabilities, testers’ method of reporting will differ, and your future employer will likely be interested in getting a better understanding of how you report your Selenium tests.
How would you automate this?
In order to prove your technical capabilities, you may be asked to write a test case. This not only helps the interviewer understand whether you’re able to accurately use Selenium, it also helps them understand your process.
Straight From the Manager’s Mouth
These previous questions are common in the test automation space, but to give you a more well-rounded look at what you could be asked, we also asked a few others might ask for Selenium interview questions:
“There are a few questions I ask our candidates. In most cases, they are a bit general, however it will give us an overall picture of what to expect from your future employee. I value the logical and intuitive thinking of a candidate, as I understand that in tandem with their knowledge, this will make them perfect team players and valuable members of our company.
These questions help me assume if a candidate follows the best practices in work with Selenium. It also helps me to understand how much expertise the candidate has and if he or she is ready for further learning and improving as a QA professional.
- In your opinion, why we should we choose this tool, and what are its advantages among others similar tools? What is the fundamental benefit of Selenium?
- What are the limitations of Selenium? For what purpose it is not the best choice?
- What type of tests have you automated?
- What are some differences between CSS selector and XPath based locators? Explain how one is better than another and why. What are the testing process particularities while working with CSS selectors and Selenium?
- What is a hybrid framework in Selenium?
- What is Page Object Model and Page Factory in Selenium? Provide an example in which case we can use them.”
“1. How many tools are there in the Selenium tool suite? Tell me more about each tool.
2. We use WebDriver’s APIs to write our tests. What do you think about calling WebDriver’s APIs directly inside the test case?
These first two questions are easy questions to start the interview. There is no need to continue if they fail these.
3. What are the solutions to eliminate bad test design problems when using WebDriver? Compare and contrast your solutions.
I expect the interviewee to show deep knowledge on industry best practices on test designs such as Page Object or BDD.
4. What is your preferred control locating technique? And Why? Compare.
Interviewee should have good knowledge about capturing UI controls, and ability to determine what is the best locator for different situation, knowledge about different locator techniques.
5. Do you have any experience integrating your Selenium tests with any CI/CD tools? If Yes, Explain your experience.
This question helps to identify the superstar candidates. One element is that in order to successfully answer this, they will have to have had to have some real experience working with CI/CD tools to explain the answer in detail.”
-Thanh Viet Le, Automation Project Lead & Framework Architect, LogiGear
“1. What are some common exceptions you have encountered in Selenium and what are the steps you took to handle those exceptions?
This question is asked to understand the candidate’s knowledge and experience of Selenium exceptions and handling. This enables maintainable automation and we want to ensure these basics are understood by the software engineers.
2. What would the optimal Selenium automation framework look like?
This question is asked to understand the candidate’s in-depth knowledge of automation testing and the automation process, as well as gauge the candidate’s technical knowledge of how Selenium frameworks are architected.
3. Can you provide a few examples of major challenges you have experienced when automating test cases with Selenium and how you went about resolving them?
This question is asked to get an understanding of the types of complex test cases the candidate has automated with Selenium and the strategies the candidate used to resolve the testing challenges.
4. What are some major innovations or enhancements you have created in your Selenium automation framework?
This question is asked to identify the candidates out of the box thinking and assess the candidate’s self-driven qualities. It allows us to gain insight into how a Selenium automation engineer thinks in regards to ensuring the frameworks are maintainable, robust, and portable.
5. Can you describe some changes that have been made in Selenium 3.0 from Selenium 2 and the reason for those changes?
This question is asked to learn about candidate’s complete knowledge of the Selenium testing framework and the candidate’s enthusiasm/curiosity about product updates/new versions. It also gives us a clear idea if they stay up-to-date on enhancements and best practices.”
-Vivek Kumar, Head of Automation, QASource Automation Testing Services
What are we missing? Leave the Selenium interview questions you’ve asked or answered in the comments.