• Stars
    star
    2,485
  • Rank 17,713 (Top 0.4 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created over 7 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Selenium Hub successor running browsers within containers. Scalable, immutable, self hosted Selenium-Grid on any platform with single binary.

Selenoid

Build Status Coverage Go Report Card Release Docker Pulls StackOverflow Tag

Selenoid is a powerful implementation of Selenium hub using Docker containers to launch browsers. Selenoid Animation

Features

One-command Installation

Start browser automation in minutes by downloading Configuration Manager binary and running just one command:

$ ./cm selenoid start --vnc --tmpfs 128

That's it! You can now use Selenoid instead of Selenium server. Specify the following Selenium URL in tests:

http://localhost:4444/wd/hub

Ready to use Browser Images

No need to manually install browsers or dive into WebDriver documentation. Available images: Browsers List

New images are added right after official releases. You can create your custom images with browsers.

Live Browser Screen and Logs

New rich user interface showing browser screen and Selenium session logs: Selenoid UI

Video Recording

  • Any browser session can be saved to H.264 video (example)
  • An API to list, download and delete recorded video files

Convenient Logging

  • Any browser session logs are automatically saved to files - one per session
  • An API to list, download and delete saved log files

Lightweight and Lightning Fast

Suitable for personal usage and in big clusters:

  • Consumes 10 times less memory than Java-based Selenium server under the same load
  • Small 6 Mb binary with no external dependencies (no need to install Java)
  • Browser consumption API working out of the box
  • Ability to send browser logs to centralized log storage (e.g. to the ELK-stack)
  • Fully isolated and reproducible environment

Detailed Documentation and Free Support

Maintained by a growing community:

Complete Guide & Build Instructions

Complete reference guide (including building instructions) can be found at: http://aerokube.com/selenoid/latest/

Selenoid in Kubernetes

Selenoid was initially created to be deployed on hardware servers or virtual machines and is not suitable for Kubernetes. Detailed motivation is described here. If you still need running Selenium tests in Kubernetes, then take a look at Moon - our dedicated solution for Kubernetes.

Known Users

JetBrains Yandex Sberbank Technology ThoughtWorks VK.com SuperJob PropellerAds AlfaBank 3CX IQ Option Mail.Ru Group Newegg.Com Badoo BCS Quality Lab AT Consulting Royal Caribbean International Sixt Testjar Flipdish RiAdvice

More Repositories

1

ggr

A lightweight load balancer used to create big Selenium clusters
Go
310
star
2

selenoid-ui

Graphical user interface for Selenoid project
JavaScript
297
star
3

windows-images

Step by step instructions for building Docker images with Windows
Shell
215
star
4

moon

Browser automation solution for Kubernetes and Openshift supporting Selenium, Playwright, Puppeteer and Cypress
HTML
194
star
5

images

Browser images for Selenoid and Moon 1.x
Go
162
star
6

cm

Configuration manager for Aerokube products
Go
117
star
7

moon-deploy

Moon 1.x one-command deployment configuration
39
star
8

ggr-ui

The missing /status API for Ggr
Go
39
star
9

lightning-java

Lightweight and lightning fast Java WebDriver client for test automation professionals
Java
30
star
10

selenium-openapi

The missing Selenium OpenAPI spec
Shell
27
star
11

elk-config

ELK stack configuration files
26
star
12

selenoid-grafana-example

Telegraf + InfluxDB + Grafana example for selenoid metrics collection
Shell
20
star
13

chrome-developer-tools-protocol-java-example

An example of using Java client to work with Chrome Developer Tools Protocol in Selenoid
Java
18
star
14

selenoid-container-tests

An automated Java test suite to check browser images quality
Java
13
star
15

charts

Aerokube Helm Charts Repository
Smarty
11
star
16

selenium-mock

Selenium Hub emulator
Go
9
star
17

demo-tests

A set of demonstration tests
Java
8
star
18

init

Correct init process for Docker containers
Shell
7
star
19

moon-cloud-webdriverio-example

An example Webdriver.io project demonstrating how to work with Moon Cloud
JavaScript
4
star
20

moon-cloud-playwright-example

JavaScript
4
star
21

aerokubot

Simple Telegram bot to help with support chat
Go
4
star
22

cloud-images

Ansible playbooks to build images for cloud platforms
Shell
3
star
23

cypress-moon

NPM package source for Cypress integration with Moon
JavaScript
2
star
24

lightning-java-examples

Examples for Lightning WebDriver client
Java
2
star
25

kubernetes-selenium-desktop

One-command automation scripts allowing to quickly deploy Moon
Batchfile
2
star
26

selenium-load-generator

A standalone binary to easily generate Selenium cluster load from the local machine.
Go
1
star
27

moon-cloud-codeception-example

An example Codeception project demonstrating how to work with Moon Cloud
PHP
1
star
28

moon-cloud-puppeteer-example

An example demonstrating using Moon Cloud with Puppeteer
JavaScript
1
star
29

python-demo-test

Selenium Python demo test
Python
1
star
30

boot

Solution to launch lightweight test and development virtual machines in Kubernetes
HTML
1
star
31

moon-cloud-protractor-example

An example Protractor project demonstrating how to work with Moon Cloud
JavaScript
1
star
32

moon-cloud-cypress-example

An example Cypress project demonstrating how to work with Moon Cloud
JavaScript
1
star