Legacy developer documentation

Information of interest to developers of Selenium

Architectural Overview and Design Principles

The original design principles behind the WebDriver implementations.

Crazy Fun Build Tool

The original Selenium Build Tool that grew from nothing to be extremely unwieldy, making it both crazy and “fun” to work with.

Browser Automation Atoms

Shared JavaScript building blocks used across Selenium driver implementations.

Buck Build Tool

Buck is a build tool from Facebook that we were working with to replace Crazy fun. We have since replaced it with Bazel.

Adding new drivers to Selenium 2 code

Instructions for how to create tests for new drivers for Selenium 2.

Selenium's Continuous Integration Implementation

We used to have a Jenkins CI tool that executed unit tests and ran integration tests on Sauce Labs. We moved all of the tests to Travis, and now execute everything with Github Actions.

Google Summer of Code 2011

Selenium encouraged users to take advantage of this program.

Logging in WebDriver

The original design for log types, levels and retrieval in the JSON Wire Protocol.

Developer Tips

Details on how to execute Selenium Test Suite with Crazy Fun.

Ruby Development with Crazy Fun

How to build and test the Ruby bindings with the Crazy Fun build.

Snapshot of Roadmaps for Selenium Releases

The list of plans and things to accomplish before a release

Last modified January 10, 2022: More wiki (#907) [deploy site] (adcf706a1ad)