class RemoteWebDriver implements WebDriver, JavaScriptExecutor (View source)

Properties

protected HttpCommandExecutor $executor
protected string $sessionID
protected RemoteMouse $mouse
protected RemoteKeyboard $keyboard
protected RemoteTouchScreen $touch
protected RemoteExecuteMethod $executeMethod

Methods

__construct()

No description

static RemoteWebDriver
create(string $url = 'http://localhost:4444/wd/hub', DesiredCapabilities|array $desired_capabilities = null, int|null $connection_timeout_in_ms = null, int|null $request_timeout_in_ms = null, string|null $http_proxy = null, int|null $http_proxy_port = null)

Construct the RemoteWebDriver by a desired capabilities.

static RemoteWebDriver
createBySessionID($session_id, $url = 'http://localhost:4444/wd/hub')

[Experimental] Construct the RemoteWebDriver by an existing session.

close()

Close the current window.

findElement(WebDriverBy $by)

Find the first WebDriverElement using the given mechanism.

findElements(WebDriverBy $by)

Find all WebDriverElements within the current page using the given mechanism.

get(string $url)

Load a new web page in the current browser window.

string
getCurrentURL()

Get a string representing the current URL that the browser is looking at.

string
getPageSource()

Get the source of the last loaded page.

string
getTitle()

Get the title of the current page.

string
getWindowHandle()

Return an opaque handle to this window that uniquely identifies it within this driver instance.

array
getWindowHandles()

Get all window handles available to the current session.

quit()

Quits this driver, closing every associated window.

mixed
executeScript(string $script, array $arguments = [])

Inject a snippet of JavaScript into the page for execution in the context of the currently selected frame. The executed script is assumed to be synchronous and the result of evaluating the script will be returned.

mixed
executeAsyncScript(string $script, array $arguments = [])

Inject a snippet of JavaScript into the page for asynchronous execution in the context of the currently selected frame.

string
takeScreenshot(string $save_as = null)

Take a screenshot of the current page.

wait(int $timeout_in_second = 30, int $interval_in_millisecond = 250)

Construct a new WebDriverWait by the current WebDriver instance.

manage()

An abstraction for managing stuff you would do in a browser menu. For example, adding and deleting cookies.

navigate()

An abstraction allowing the driver to access the browser's history and to navigate to a given URL.

switchTo()

Switch to a different window or frame.

getMouse()

No description

getKeyboard()

No description

getTouch()

No description

getExecuteMethod()

No description

action()

Construct a new action builder.

newElement(string $id)

Return the WebDriverElement with the given id.

setCommandExecutor(WebDriverCommandExecutor $executor)

Set the command executor of this RemoteWebdriver

getCommandExecutor()

Set the command executor of this RemoteWebdriver

setSessionID(string $session_id)

Set the session id of the RemoteWebDriver.

string
getSessionID()

Get current selenium sessionID

static array
getAllSessions(string $url = 'http://localhost:4444/wd/hub', int $timeout_in_ms = 30000)

Get all selenium sessions.

mixed
execute($command_name, array $params = [])

No description

Details

protected __construct()

static RemoteWebDriver create(string $url = 'http://localhost:4444/wd/hub', DesiredCapabilities|array $desired_capabilities = null, int|null $connection_timeout_in_ms = null, int|null $request_timeout_in_ms = null, string|null $http_proxy = null, int|null $http_proxy_port = null)

Construct the RemoteWebDriver by a desired capabilities.

Parameters

string $url The url of the remote server
DesiredCapabilities|array $desired_capabilities The desired capabilities
int|null $connection_timeout_in_ms
int|null $request_timeout_in_ms
string|null $http_proxy The proxy to tunnel requests through
int|null $http_proxy_port

Return Value

RemoteWebDriver

static RemoteWebDriver createBySessionID($session_id, $url = 'http://localhost:4444/wd/hub')

[Experimental] Construct the RemoteWebDriver by an existing session.

This constructor can boost the performance a lot by reusing the same browser for the whole test suite. You do not have to pass the desired capabilities because the session was created before.

Parameters

$session_id
$url

Return Value

RemoteWebDriver

WebDriver close()

Close the current window.

Return Value

WebDriver The current instance.

WebDriverElement findElement(WebDriverBy $by)

Find the first WebDriverElement using the given mechanism.

Parameters

WebDriverBy $by

Return Value

WebDriverElement NoSuchElementException is thrown in HttpCommandExecutor if no element is found.

See also

WebDriverBy

WebDriverElement[] findElements(WebDriverBy $by)

Find all WebDriverElements within the current page using the given mechanism.

Parameters

WebDriverBy $by

Return Value

WebDriverElement[] A list of all WebDriverElements, or an empty array if nothing matches

See also

WebDriverBy

WebDriver get(string $url)

Load a new web page in the current browser window.

Parameters

string $url

Return Value

WebDriver The current instance.

string getCurrentURL()

Get a string representing the current URL that the browser is looking at.

Return Value

string The current URL.

string getPageSource()

Get the source of the last loaded page.

Return Value

string The current page source.

string getTitle()

Get the title of the current page.

Return Value

string The title of the current page.

string getWindowHandle()

Return an opaque handle to this window that uniquely identifies it within this driver instance.

Return Value

string The current window handle.

array getWindowHandles()

Get all window handles available to the current session.

Return Value

array An array of string containing all available window handles.

quit()

Quits this driver, closing every associated window.

mixed executeScript(string $script, array $arguments = [])

Inject a snippet of JavaScript into the page for execution in the context of the currently selected frame. The executed script is assumed to be synchronous and the result of evaluating the script will be returned.

Parameters

string $script The script to inject.
array $arguments The arguments of the script.

Return Value

mixed The return value of the script.

mixed executeAsyncScript(string $script, array $arguments = [])

Inject a snippet of JavaScript into the page for asynchronous execution in the context of the currently selected frame.

The driver will pass a callback as the last argument to the snippet, and block until the callback is invoked.

Parameters

string $script The script to inject.
array $arguments The arguments of the script.

Return Value

mixed The value passed by the script to the callback.

See also

WebDriverExecuteAsyncScriptTestCase

string takeScreenshot(string $save_as = null)

Take a screenshot of the current page.

Parameters

string $save_as The path of the screenshot to be saved.

Return Value

string The screenshot in PNG format.

WebDriverWait wait(int $timeout_in_second = 30, int $interval_in_millisecond = 250)

Construct a new WebDriverWait by the current WebDriver instance.

Sample usage:

$driver->wait(20, 1000)->until( WebDriverExpectedCondition::titleIs('WebDriver Page') );

Parameters

int $timeout_in_second
int $interval_in_millisecond

Return Value

WebDriverWait

WebDriverOptions manage()

An abstraction for managing stuff you would do in a browser menu. For example, adding and deleting cookies.

Return Value

WebDriverOptions

WebDriverNavigation navigate()

An abstraction allowing the driver to access the browser's history and to navigate to a given URL.

Return Value

WebDriverNavigation

See also

WebDriverNavigation

WebDriverTargetLocator switchTo()

Switch to a different window or frame.

Return Value

WebDriverTargetLocator

See also

RemoteTargetLocator

RemoteMouse getMouse()

Return Value

RemoteMouse

RemoteKeyboard getKeyboard()

Return Value

RemoteKeyboard

RemoteTouchScreen getTouch()

Return Value

RemoteTouchScreen

protected getExecuteMethod()

WebDriverActions action()

Construct a new action builder.

Return Value

WebDriverActions

protected RemoteWebElement newElement(string $id)

Return the WebDriverElement with the given id.

Parameters

string $id The id of the element to be created.

Return Value

RemoteWebElement

RemoteWebDriver setCommandExecutor(WebDriverCommandExecutor $executor)

Set the command executor of this RemoteWebdriver

Parameters

WebDriverCommandExecutor $executor

Return Value

RemoteWebDriver

HttpCommandExecutor getCommandExecutor()

Set the command executor of this RemoteWebdriver

Return Value

HttpCommandExecutor

RemoteWebDriver setSessionID(string $session_id)

Set the session id of the RemoteWebDriver.

Parameters

string $session_id

Return Value

RemoteWebDriver

string getSessionID()

Get current selenium sessionID

Return Value

string sessionID

static array getAllSessions(string $url = 'http://localhost:4444/wd/hub', int $timeout_in_ms = 30000)

Get all selenium sessions.

Parameters

string $url The url of the remote server
int $timeout_in_ms

Return Value

array

mixed execute($command_name, array $params = [])

Parameters

$command_name
array $params

Return Value

mixed