Selenium

The original, still-widely-used browser automation framework.

CurrentintermediateFull course available

Overview

Selenium automates real browsers for testing, supporting many languages and browsers via the WebDriver protocol. It's the longest-established browser automation tool and remains common in existing test suites, though newer tools like Playwright have gained ground for new projects with faster, more reliable APIs.

What it is
A browser automation framework for driving real browsers programmatically, primarily for testing.
Why it's used
Broad language and browser support, and a very large existing ecosystem of tests and tutorials built on it.
Where it fits
An alternative to Playwright for browser-based end-to-end testing; commonly found in existing (especially Java-based) enterprise test suites. The Selenium WebDriver Automation course covers this in depth using Java, building on Java Programming Foundations: WebDriver architecture, explicit waits, page objects, JUnit integration, and CI execution.

Core concepts

  • WebDriver
  • Locating elements
  • Waits (avoiding flaky tests)
  • Page object pattern

Example

Selenium drives a real browser through the WebDriver protocol -- the same approach (real browser automation, not a simulated DOM) that this platform's own end-to-end tests use, via Playwright instead.

WebDriver driver = new ChromeDriver();
driver.get("https://example.com");
driver.findElement(By.id("submit")).click();

Common use cases

  • Automated browser testing
  • Maintaining existing Selenium-based test suites

Project ideas

  • Automate a simple form submission and assertion on a test page

Official references