Appearance
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.