CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/maven-org-seleniumhq-selenium--selenium-server

Selenium Grid server that enables distributed test execution across multiple browsers and operating systems.

Pending
Overview
Eval results
Files

cli.mddocs/

Command Line Interface

The Selenium Grid server provides traditional Grid 3 role-based commands and limited modern command support for different deployment scenarios in version 3.141.59.

Capabilities

Main Entry Points

Multiple entry points available for Grid server operations:

# Traditional Grid 3 syntax (recommended for v3.141.59)
java -jar selenium-server-standalone-3.141.59.jar -role <hub|node|standalone> [options]

# Modern command syntax (limited support in v3.141.59)
java -jar selenium-server-standalone-3.141.59.jar <command> [options]

# Direct class invocation (advanced)
java -cp selenium-server-standalone-3.141.59.jar org.openqa.grid.selenium.GridLauncherV3 [options]

If no role or command is specified, runs as standalone server on port 4444.

Available Commands

Traditional Grid 3 Roles (Recommended)

Standalone Role

Runs complete Selenium Grid setup in a single process with hub and node functionality.

java -jar selenium-server-standalone-3.141.59.jar -role standalone [options]
# Or simply (standalone is default):
java -jar selenium-server-standalone-3.141.59.jar [options]

# Default port: 4444
# Includes: Hub + Node functionality

Usage Example:

# Basic standalone server
java -jar selenium-server-standalone-3.141.59.jar -role standalone

# Custom port and host
java -jar selenium-server-standalone-3.141.59.jar -role standalone -port 4440 -host 192.168.1.100

# With debug logging
java -jar selenium-server-standalone-3.141.59.jar -role standalone -debug
Hub Role

Runs as Grid hub that manages node registration and session distribution.

java -jar selenium-server-standalone-3.141.59.jar -role hub [options]

# Default port: 4444
# Function: Central registry and session router

Usage Example:

# Basic hub
java -jar selenium-server-standalone-3.141.59.jar -role hub

# Hub on specific port with custom timeout
java -jar selenium-server-standalone-3.141.59.jar -role hub -port 4444 -timeout 300
Node Role

Runs as Grid node that registers with a hub and provides browser instances.

java -jar selenium-server-standalone-3.141.59.jar -role node [options]

# Default port: 5555
# Function: Provides browser instances, registers with hub

Usage Example:

# Node connecting to hub
java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://hub-host:4444

# Node with custom capabilities
java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://hub-host:4444 \
  -browser "browserName=chrome,maxInstances=5" \
  -browser "browserName=firefox,maxInstances=3"

Modern Command Syntax (Limited Support)

Standalone Command

Alternative syntax for standalone server (limited options compared to -role syntax).

java -jar selenium-server-standalone-3.141.59.jar standalone [options]

# Default port: 4444
# Note: Limited option support compared to -role standalone
Hub Command (Modern Syntax)

Alternative syntax for hub server (limited options compared to -role hub).

java -jar selenium-server-standalone-3.141.59.jar hub [options]

# Default port: 4444
# Note: Limited option support compared to -role hub
Node Command (Modern Syntax)

Alternative syntax for node server (limited options compared to -role node).

java -jar selenium-server-standalone-3.141.59.jar node [options]

# Default port: 5555
# Note: Limited option support compared to -role node
Additional Modern Commands (Limited Support)

These commands have limited support in v3.141.59 and may not have full functionality:

# Router component (limited functionality)
java -jar selenium-server-standalone-3.141.59.jar router [options]

# Distributor component (limited functionality)  
java -jar selenium-server-standalone-3.141.59.jar distributor [options]

# Sessions component (limited functionality)
java -jar selenium-server-standalone-3.141.59.jar sessions [options]

Note: These commands exist but have limited option support. Use traditional -role syntax for full functionality.

Command Line Options

Common Options (All Roles)

Options available for all Grid 3 roles and commands.

# Core server options
-role <hub|node|standalone>     # Server role (default: standalone)
-host <hostname>                # IP or hostname (auto-detected if not set)
-port <integer>                 # Port number (default varies by role)
-timeout, -sessionTimeout <seconds> # Session timeout (default: 1800)
-browserTimeout <seconds>       # Browser command timeout (default: 0)
-debug                          # Enable debug logging (LogLevel.FINE)
-log <filename>                 # Log filename (STDOUT if omitted)
-jettyThreads <integer>         # Max Jetty threads (default: 200)
-version                        # Display version and exit
-help, -h                       # Display help

Hub-Specific Options (-role hub)

Options specific to hub role configuration.

-hubConfig <filename>           # JSON config file for hub
-matcher <class>                # Custom capability matcher class
-newSessionWaitTimeout <ms>     # Timeout for new session requests
-prioritizer <class>            # Custom prioritizer class
-throwOnCapabilityNotPresent <true/false> # Reject requests if no matching node
-registry <class>               # Custom registry implementation
-cleanUpCycle <ms>              # Cleanup cycle for hung threads
-maxSession <integer>           # Max browser sessions per node
-servlet <class>                # Extra servlets to add
-withoutServlet <class>         # Default servlets to disable
-custom <key=value,key=value>   # Custom key/value pairs

Node-Specific Options (-role node)

Options specific to node role configuration.

-nodeConfig <filename>          # JSON config file for node
-hub <URL>                      # Hub URL (e.g., http://hub:4444/grid/register)
-hubHost <hostname>             # Hub host address
-hubPort <integer>              # Hub port number
-remoteHost <URL>               # Address to report to hub
-id <string>                    # Unique node identifier
-capabilities <caps>            # Node capabilities
-browser <caps>                 # Browser capabilities (can specify multiple)
-downPollingLimit <integer>     # Node down polling limit
-nodePolling <ms>               # How often hub polls node (default: 5000)
-nodeStatusCheckTimeout <ms>    # Node status check timeout (default: 5000)
-proxy <class>                  # Proxy class (default: DefaultRemoteProxy)
-register <true/false>          # Whether to register with hub
-registerCycle <ms>             # Re-registration interval (default: 5000)
-unregisterIfStillDownAfter <ms> # Unregister timeout (default: 60000)
-enablePlatformVerification <true/false> # Verify platform capabilities

Standalone-Specific Options (-role standalone)

Options for standalone role (inherits both hub and node options).

-config <filename>              # JSON configuration file
# Plus all common, hub, and node options listed above

Help Options

Options for getting help and version information.

-h, --help                 # Display help for the command
-help                      # Alternative help flag
/?                         # Windows-style help flag
--version                  # Display version and exit

Command Examples

Single Machine Setup

# Complete Grid on one machine
java -jar selenium-server-standalone-3.141.59.jar standalone --port 4444

Distributed Setup

# Hub machine
java -jar selenium-server-standalone-3.141.59.jar hub --port 4444

# Node machine 1
java -jar selenium-server-standalone-3.141.59.jar node --port 5555 --distributor http://hub-host:4444

# Node machine 2  
java -jar selenium-server-standalone-3.141.59.jar node --port 5556 --distributor http://hub-host:4444

Microservices Architecture

# Router service
java -jar selenium-server-standalone-3.141.59.jar router --port 4444

# Distributor service
java -jar selenium-server-standalone-3.141.59.jar distributor --port 5553

# Session map service
java -jar selenium-server-standalone-3.141.59.jar sessions --port 5556

# Node services
java -jar selenium-server-standalone-3.141.59.jar node --port 5555 --distributor http://distributor-host:5553 --sessions http://sessions-host:5556

Help System

Each command supports detailed help information when run with --help flag:

# General help (lists all commands)
java -jar selenium-server-standalone-3.141.59.jar

# Command-specific help
java -jar selenium-server-standalone-3.141.59.jar standalone --help
java -jar selenium-server-standalone-3.141.59.jar node --help

Install with Tessl CLI

npx tessl i tessl/maven-org-seleniumhq-selenium--selenium-server

docs

cli.md

configuration.md

extensions.md

index.md

rest-api.md

tile.json