Skip to content

Selenium

Category: Classic Browser Automation

Cost: Free and open source (managed by the Software Freedom Conservancy)

Official site: selenium.dev

Documentation: selenium.dev/documentation

GitHub: github.com/seleniumhq/selenium


What it is

Selenium automates browsers. It is the original open-source browser automation framework, widely used for web application testing and scripting repetitive browser tasks.

It ships three components:

  • WebDriver - Language-specific bindings (Python, Java, JavaScript, C#, Ruby, Kotlin) that drive a real browser programmatically via the W3C WebDriver protocol. This is the primary tool for scripted automation.
  • Selenium IDE - A record-and-playback browser extension for Chrome, Firefox, and Edge. Good for generating quick scripts without writing code.
  • Selenium Grid - Scales test execution across multiple machines and browser/OS combinations in parallel.

When to use it

Use Selenium WebDriver when you need:

  • A battle-tested, language-agnostic browser automation library with broad ecosystem support.
  • Full control over a real browser (Chrome, Firefox, Edge, Safari) via the W3C WebDriver standard.
  • Integration with existing Python, Java, or JavaScript test suites (pytest, JUnit, Mocha, etc.).
  • A self-hosted solution with no per-minute or per-session pricing.

For managed cloud browsers, proxy support, or anti-bot stealth, consider pairing Selenium with a third-party grid provider, or use Steel/Browserbase/Hyperbrowser instead.

Safety and ToS

Selenium itself has no usage restrictions. Always respect the Terms of Service of the sites you automate against. Running Selenium against sites that prohibit automated access or bot traffic may violate their ToS.

ChromeDriver (required for Chrome) must match the installed Chrome version. Selenium Manager (bundled since 4.6.0) handles driver downloads automatically on most setups.