Table of Contents

Class DriverService

Namespace
OpenQA.Selenium
Assembly
WebDriver.dll

Exposes the service provided by a native WebDriver server executable.

public abstract class DriverService : ICommandServer, IDisposable
Inheritance
DriverService
Implements
Derived
Inherited Members

Constructors

DriverService(string, int, string)

Initializes a new instance of the DriverService class.

protected DriverService(string servicePath, int port, string driverServiceExecutableName)

Parameters

servicePath string

The full path to the directory containing the executable providing the service to drive the browser.

port int

The port on which the driver executable should listen.

driverServiceExecutableName string

The file name of the driver service executable.

Exceptions

ArgumentException

If the path specified is null or an empty string.

DriverServiceNotFoundException

If the specified driver service executable does not exist in the specified directory.

Properties

CommandLineArguments

Gets the command-line arguments for the driver service.

protected virtual string CommandLineArguments { get; }

Property Value

string

DriverServiceExecutableName

Gets or sets the executable file name of the driver service.

public string DriverServiceExecutableName { get; set; }

Property Value

string

DriverServicePath

Gets or sets the path of the driver service.

public string DriverServicePath { get; set; }

Property Value

string

HasShutdown

Gets a value indicating whether the service has a shutdown API that can be called to terminate it gracefully before forcing a termination.

protected virtual bool HasShutdown { get; }

Property Value

bool

HideCommandPromptWindow

Gets or sets a value indicating whether the command prompt window of the service should be hidden.

public bool HideCommandPromptWindow { get; set; }

Property Value

bool

HostName

Gets or sets the host name of the service. Defaults to "localhost."

public string HostName { get; set; }

Property Value

string

Remarks

Most driver service executables do not allow connections from remote (non-local) machines. This property can be used as a workaround so that an IP address (like "127.0.0.1" or "::1") can be used instead.

InitializationTimeout

Gets or sets a value indicating the time to wait for an initial connection before timing out.

public TimeSpan InitializationTimeout { get; set; }

Property Value

TimeSpan

IsInitialized

Gets a value indicating whether the service is responding to HTTP requests.

protected virtual bool IsInitialized { get; }

Property Value

bool

IsRunning

Gets a value indicating whether the service is running.

public bool IsRunning { get; }

Property Value

bool

Port

Gets or sets the port of the service.

public int Port { get; set; }

Property Value

int

ProcessId

Gets the process ID of the running driver service executable. Returns 0 if the process is not running.

public int ProcessId { get; }

Property Value

int

ServiceUrl

Gets the Uri of the service.

public Uri ServiceUrl { get; }

Property Value

Uri

SuppressInitialDiagnosticInformation

Gets or sets a value indicating whether the initial diagnostic information is suppressed when starting the driver server executable. Defaults to false, meaning diagnostic information should be shown by the driver server executable.

public bool SuppressInitialDiagnosticInformation { get; set; }

Property Value

bool

TerminationTimeout

Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.

protected virtual TimeSpan TerminationTimeout { get; }

Property Value

TimeSpan

Methods

Dispose()

Releases all resources associated with this DriverService.

public void Dispose()

Dispose(bool)

Releases all resources associated with this DriverService.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

true if the Dispose method was explicitly called; otherwise, false.

GetDefaultDriverOptions()

The browser options instance that corresponds to the driver service

protected abstract DriverOptions GetDefaultDriverOptions()

Returns

DriverOptions

OnDriverProcessStarted(DriverProcessStartedEventArgs)

Raises the DriverProcessStarted event.

protected void OnDriverProcessStarted(DriverProcessStartedEventArgs eventArgs)

Parameters

eventArgs DriverProcessStartedEventArgs

A DriverProcessStartedEventArgs that contains the event data.

OnDriverProcessStarting(DriverProcessStartingEventArgs)

Raises the DriverProcessStarting event.

protected void OnDriverProcessStarting(DriverProcessStartingEventArgs eventArgs)

Parameters

eventArgs DriverProcessStartingEventArgs

A DriverProcessStartingEventArgs that contains the event data.

Start()

Starts the DriverService if it is not already running.

public void Start()

Events

DriverProcessStarted

Occurs when the driver process has completely started.

public event EventHandler<DriverProcessStartedEventArgs> DriverProcessStarted

Event Type

EventHandler<DriverProcessStartedEventArgs>

DriverProcessStarting

Occurs when the driver process is starting.

public event EventHandler<DriverProcessStartingEventArgs> DriverProcessStarting

Event Type

EventHandler<DriverProcessStartingEventArgs>