Selenium is the standard for browser test automation, and its interviews test WebDriver fundamentals, locating elements, the waits that make tests stable, and the Page Object Model that makes them maintainable. Essential for QA automation and SDET roles. Here are the Selenium interview questions that actually get asked. (See also our QA tester guide.)
WebDriver & locators
- What is Selenium WebDriver, and how does it work?
- Locators — id, name, className, xpath, cssSelector — and which to prefer.
- Absolute vs relative XPath.
- findElement vs findElements.
Waits (the stability key)
- Implicit vs explicit vs fluent waits — the difference and when to use each.
- Why is
Thread.sleepa bad practice? - How do you handle dynamic elements that load asynchronously?
- What causes a flaky test, and how do you fix it?
Framework & advanced
- The Page Object Model (POM) — what and why.
- Handling alerts, frames, windows, and dropdowns.
- Data-driven and keyword-driven frameworks.
- Selenium Grid for parallel/cross-browser testing.
How to prepare
Selenium rounds probe waits, locators, and framework design verbally. Practise explaining explicit waits and the Page Object Model out loud. Greenroom runs spoken technical interviews that follow up on your reasoning. Pair it with our QA tester guide.
Frequently asked questions
What are the most common Selenium interview questions?
Common Selenium questions cover WebDriver and how it works, locators (id, name, xpath, cssSelector and which to prefer), absolute vs relative XPath, findElement vs findElements, implicit vs explicit vs fluent waits, why Thread.sleep is bad, handling dynamic elements and flaky tests, the Page Object Model, handling alerts/frames/windows/dropdowns, data-driven frameworks, and Selenium Grid.
What is the difference between implicit and explicit waits in Selenium?
An implicit wait sets a global timeout that applies to all element lookups, polling for an element to appear before throwing an exception. An explicit wait waits for a specific condition on a specific element (like visibility or clickability) up to a timeout, giving fine-grained control. Explicit waits are preferred for dynamic elements because they wait for the right condition rather than a blanket timeout, making tests more reliable.
What is the Page Object Model in Selenium?
The Page Object Model (POM) is a design pattern where each web page is represented by a class that encapsulates its elements and the actions on them. Tests interact with these page objects instead of raw locators, so when the UI changes you update one place rather than every test. POM improves maintainability, reduces duplication, and makes tests more readable — a frequent interview topic.
How should I prepare for a Selenium interview?
Focus on writing stable, maintainable tests: proper explicit waits over Thread.sleep, robust locators, handling dynamic elements and flaky tests, and the Page Object Model for maintainability. Practise explaining waits and POM out loud with a voice-based mock interview that follows up, since Selenium rounds reward test-design judgment over just automating clicks.