WebDriver
Provides a mechanism by which to find elements within a document.
It is possible to create your own locating mechanisms for finding documents.
In order to do this,subclass this class and override the protected methods. However,
it is expected that that all subclasses rely on the basic finding mechanisms provided
through static methods of this class. An example of this can be found in OpenQA.Support.ByIdOrName
Initializes a new instance of the class.
Initializes a new instance of the class using the given functions to find elements.
A function that takes an object implementing
and returns the found .
A function that takes an object implementing
and returns a of the foundIWebElements.
IWebElements/>.
Gets or sets the value of the description for this class instance.
Gets or sets the method used to find a single element matching specified criteria.
Gets or sets the method used to find all elements matching specified criteria.
Determines if two instances are equal.
One instance to compare.
The other instance to compare.
if the two instances are equal; otherwise, .
Determines if two instances are unequal.
s
One instance to compare.
The other instance to compare.
if the two instances are not equal; otherwise, .
Gets a mechanism to find elements by their ID.
The ID to find.
A object the driver can use to find the elements.
Gets a mechanism to find elements by their link text.
The link text to find.
A object the driver can use to find the elements.
Gets a mechanism to find elements by their name.
The name to find.
A object the driver can use to find the elements.
Gets a mechanism to find elements by an XPath query.
When searching within a WebElement using xpath be aware that WebDriver follows standard conventions:
a search prefixed with "//" will search the entire document, not just the children of this current node.
Use ".//" to limit your search to the children of this WebElement.
The XPath query to use.
A object the driver can use to find the elements.
Gets a mechanism to find elements by their CSS class.
The CSS class to find.
A object the driver can use to find the elements.
If an element has many classes then this will match against each of them.
For example if the value is "one two onone", then the following values for the
className parameter will match: "one" and "two".
Gets a mechanism to find elements by a partial match on their link text.
The partial link text to find.
A object the driver can use to find the elements.
Gets a mechanism to find elements by their tag name.
The tag name to find.
A object the driver can use to find the elements.
Gets a mechanism to find elements by their cascading style sheet (CSS) selector.
The CSS selector to find.
A object the driver can use to find the elements.
Finds the first element matching the criteria.
An object to use to search for the elements.
The first matching on the current context.
Finds all elements matching the criteria.
An object to use to search for the elements.
A of all WebElements
matching the current criteria, or an empty list if nothing matches.
Gets a string representation of the finder.
The string displaying the finder content.
Determines whether the specified Object is equal
to the current Object.
The Object to compare with the
current Object.
if the specified Object
is equal to the current Object; otherwise,
.
Serves as a hash function for a particular type.
A hash code for the current Object.
Provides a mechanism to write tests against Chrome
[TestFixture]
public class Testing
{
private IWebDriver driver;
[SetUp]
public void SetUp()
{
driver = new ChromeDriver();
}
[Test]
public void TestGoogle()
{
driver.Navigate().GoToUrl("http://www.google.co.uk");
/*
* Rest of the test
*/
}
[TearDown]
public void TearDown()
{
driver.Quit();
}
}
Accept untrusted SSL Certificates
Initializes a new instance of the class.
Initializes a new instance of the class using the specified options.
The to be used with the Chrome driver.
Initializes a new instance of the class using the specified driver service.
The used to initialize the driver.
Initializes a new instance of the class using the specified path
to the directory containing ChromeDriver.exe.
The full path to the directory containing ChromeDriver.exe.
Initializes a new instance of the class using the specified path
to the directory containing ChromeDriver.exe and options.
The full path to the directory containing ChromeDriver.exe.
The to be used with the Chrome driver.
Initializes a new instance of the class using the specified path
to the directory containing ChromeDriver.exe, options, and command timeout.
The full path to the directory containing ChromeDriver.exe.
The to be used with the Chrome driver.
The maximum amount of time to wait for each command.
Initializes a new instance of the class using the specified
and options.
The to use.
The used to initialize the driver.
Initializes a new instance of the class using the specified .
The to use.
The to be used with the Chrome driver.
The maximum amount of time to wait for each command.
Gets or sets the responsible for detecting
sequences of keystrokes representing file paths and names.
The Chrome driver does not allow a file detector to be set,
as the server component of the Chrome driver (ChromeDriver.exe) only
allows uploads from the local computer environment. Attempting to set
this property has no effect, but does not throw an exception. If you
are attempting to run the Chrome driver remotely, use
in conjunction with a standalone WebDriver server.
Gets or sets the network condition emulation for Chrome.
Executes a custom Chrome command.
Name of the command to execute.
Parameters of the command to execute.
Exposes the service provided by the native ChromeDriver executable.
Initializes a new instance of the class.
The full path to the ChromeDriver executable.
The file name of the ChromeDriver executable.
The port on which the ChromeDriver executable should listen.
Gets or sets the location of the log file written to by the ChromeDriver executable.
Gets or sets the base URL path prefix for commands (e.g., "wd/url").
Gets or sets the address of a server to contact for reserving a port.
Gets or sets the port on which the Android Debug Bridge is listening for commands.
Gets or sets a value indicating whether to enable verbose logging for the ChromeDriver executable.
Defaults to .
Gets or sets the comma-delimited list of IP addresses that are approved to
connect to this instance of the Chrome driver. Defaults to an empty string,
which means only the local loopback address can connect.
Gets the command-line arguments for the driver service.
Creates a default instance of the ChromeDriverService.
A ChromeDriverService that implements default settings.
Creates a default instance of the ChromeDriverService using a specified path to the ChromeDriver executable.
The directory containing the ChromeDriver executable.
A ChromeDriverService using a random port.
Creates a default instance of the ChromeDriverService using a specified path to the ChromeDriver executable with the given name.
The directory containing the ChromeDriver executable.
The name of the ChromeDriver executable file.
A ChromeDriverService using a random port.
Returns the Chrome driver filename for the currently running platform
The file name of the Chrome driver service executable.
Represents the type-safe options for setting settings for emulating a
mobile device in the Chrome browser.
Initializes a new instance of the class.
Initializes a new instance of the class.
The user agent string to be used by the browser when emulating
a mobile device.
Gets or sets the user agent string to be used by the browser when emulating
a mobile device.
Gets or sets the width in pixels to be used by the browser when emulating
a mobile device.
Gets or sets the height in pixels to be used by the browser when emulating
a mobile device.
Gets or sets the pixel ratio to be used by the browser when emulating
a mobile device.
Gets or sets a value indicating whether touch events should be enabled by
the browser when emulating a mobile device. Defaults to .
Provides manipulation of getting and setting network conditions from Chrome.
Gets or sets a value indicating whether the network is offline. Defaults to .
Gets or sets the simulated latency of the connection. Typically given in milliseconds.
Gets or sets the throughput of the network connection in kb/second for downloading.
Gets or sets the throughput of the network connection in kb/second for uploading.
Class to manage options specific to
Used with ChromeDriver.exe v17.0.963.0 and higher.
ChromeOptions options = new ChromeOptions();
options.AddExtensions("\path\to\extension.crx");
options.BinaryLocation = "\path\to\chrome";
For use with ChromeDriver:
ChromeDriver driver = new ChromeDriver(options);
For use with RemoteWebDriver:
RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
Gets the name of the capability used to store Chrome options in
a object.
Gets or sets the location of the Chrome browser's binary executable file.
Gets or sets a value indicating whether Chrome should be left running after the
ChromeDriver instance is exited. Defaults to .
Gets the list of arguments appended to the Chrome command line as a string array.
Gets the list of extensions to be installed as an array of base64-encoded strings.
Gets or sets the address of a Chrome debugger server to connect to.
Should be of the form "{hostname|IP address}:port".
Gets or sets the directory in which to store minidump files.
Gets or sets the performance logging preferences for the driver.
Gets or sets a value indicating whether the instance
should use the legacy OSS protocol dialect or a dialect compliant with the W3C
WebDriver Specification.
Adds a single argument to the list of arguments to be appended to the Chrome.exe command line.
The argument to add.
Adds arguments to be appended to the Chrome.exe command line.
An array of arguments to add.
Adds arguments to be appended to the Chrome.exe command line.
An object of arguments to add.
Adds a single argument to be excluded from the list of arguments passed by default
to the Chrome.exe command line by chromedriver.exe.
The argument to exclude.
Adds arguments to be excluded from the list of arguments passed by default
to the Chrome.exe command line by chromedriver.exe.
An array of arguments to exclude.
Adds arguments to be excluded from the list of arguments passed by default
to the Chrome.exe command line by chromedriver.exe.
An object of arguments to exclude.
Adds a path to a packed Chrome extension (.crx file) to the list of extensions
to be installed in the instance of Chrome.
The full path to the extension to add.
Adds a list of paths to packed Chrome extensions (.crx files) to be installed
in the instance of Chrome.
An array of full paths to the extensions to add.
Adds a list of paths to packed Chrome extensions (.crx files) to be installed
in the instance of Chrome.
An of full paths to the extensions to add.
Adds a base64-encoded string representing a Chrome extension to the list of extensions
to be installed in the instance of Chrome.
A base64-encoded string representing the extension to add.
Adds a list of base64-encoded strings representing Chrome extensions to the list of extensions
to be installed in the instance of Chrome.
An array of base64-encoded strings representing the extensions to add.
Adds a list of base64-encoded strings representing Chrome extensions to be installed
in the instance of Chrome.
An of base64-encoded strings
representing the extensions to add.
Adds a preference for the user-specific profile or "user data directory."
If the specified preference already exists, it will be overwritten.
The name of the preference to set.
The value of the preference to set.
Adds a preference for the local state file in the user's data directory for Chrome.
If the specified preference already exists, it will be overwritten.
The name of the preference to set.
The value of the preference to set.
Allows the Chrome browser to emulate a mobile device.
The name of the device to emulate. The device name must be a
valid device name from the Chrome DevTools Emulation panel.
Specifying an invalid device name will not throw an exeption, but
will generate an error in Chrome when the driver starts. To unset mobile
emulation, call this method with as the argument.
Allows the Chrome browser to emulate a mobile device.
The
object containing the settings of the device to emulate.
Thrown if the device settings option does
not have a user agent string set.
Specifying an invalid device name will not throw an exeption, but
will generate an error in Chrome when the driver starts. To unset mobile
emulation, call this method with as the argument.
Adds a type of window that will be listed in the list of window handles
returned by the Chrome driver.
The name of the window type to add.
This method can be used to allow the driver to access {webview}
elements by adding "webview" as a window type.
Adds a list of window types that will be listed in the list of window handles
returned by the Chrome driver.
An array of window types to add.
Adds a list of window types that will be listed in the list of window handles
returned by the Chrome driver.
An of window types to add.
Provides a means to add additional capabilities not yet added as type safe options
for the Chrome driver.
The name of the capability to add.
The value of the capability to add.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling
where has already been added will overwrite the
existing value with the new value in .
Also, by default, calling this method adds capabilities to the options object passed to
chromedriver.exe.
Provides a means to add additional capabilities not yet added as type safe options
for the Chrome driver.
The name of the capability to add.
The value of the capability to add.
Indicates whether the capability is to be set as a global
capability for the driver instead of a Chrome-specific option.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling
where has already been added will overwrite the
existing value with the new value in
Returns DesiredCapabilities for Chrome with these options included as
capabilities. This does not copy the options. Further changes will be
reflected in the returned capabilities.
The DesiredCapabilities for Chrome with these options.
Represents the type-safe options for setting preferences for performance
logging in the Chrome browser.
Gets or sets a value indicating whether Chrome will collect events from the Network domain.
Defaults to .
Gets or sets a value indicating whether Chrome will collect events from the Page domain.
Defaults to .
Gets or sets the interval between Chrome DevTools trace buffer usage events.
Defaults to 1000 milliseconds.
Thrown when an attempt is made to set
the value to a time span of less tnan or equal to zero milliseconds.
Gets a comma-separated list of the categories for which tracing is enabled.
Adds a single category to the list of Chrome tracing categories for which events should be collected.
The category to add.
Adds categories to the list of Chrome tracing categories for which events should be collected.
An array of categories to add.
Adds categories to the list of Chrome tracing categories for which events should be collected.
An object of categories to add.
Provides a mechanism to get elements off the page for test
Initializes a new instance of the class.
Driver in use
Id of the element
Represents a cookie in the browser.
Initializes a new instance of the class with a specific name,
value, domain, path and expiration date.
The name of the cookie.
The value of the cookie.
The domain of the cookie.
The path of the cookie.
The expiration date of the cookie.
If the name is or an empty string,
or if it contains a semi-colon.
If the value is .
Initializes a new instance of the class with a specific name,
value, path and expiration date.
The name of the cookie.
The value of the cookie.
The path of the cookie.
The expiration date of the cookie.
If the name is or an empty string,
or if it contains a semi-colon.
If the value is .
Initializes a new instance of the class with a specific name,
value, and path.
The name of the cookie.
The value of the cookie.
The path of the cookie.
If the name is or an empty string,
or if it contains a semi-colon.
If the value is .
Initializes a new instance of the class with a specific name and value.
The name of the cookie.
The value of the cookie.
If the name is or an empty string,
or if it contains a semi-colon.
If the value is .
Gets the name of the cookie.
Gets the value of the cookie.
Gets the domain of the cookie.
Gets the path of the cookie.
Gets a value indicating whether the cookie is secure.
Gets a value indicating whether the cookie is an HTTP-only cookie.
Gets the expiration date of the cookie.
Gets the cookie expiration date in seconds from the defined zero date (01 January 1970 00:00:00 UTC).
This property only exists so that the JSON serializer can serialize a
cookie without resorting to a custom converter.
Converts a Dictionary to a Cookie.
The Dictionary object containing the cookie parameters.
A object with the proper parameters set.
Creates and returns a string representation of the cookie.
A string representation of the cookie.
Determines whether the specified Object is equal
to the current Object.
The Object to compare with the
current Object.
if the specified Object
is equal to the current Object; otherwise,
.
Serves as a hash function for a particular type.
A hash code for the current Object.
Represents the default file detector for determining whether a file
must be uploaded to a remote server.
Returns a value indicating whether a specified key sequence represents
a file name and path.
The sequence to test for file existence.
This method always returns in this implementation.
Specifies the behavior of handling unexpected alerts in the IE driver.
Indicates the behavior is not set.
Ignore unexpected alerts, such that the user must handle them.
Accept unexpected alerts.
Dismiss unexpected alerts.
Accepts unexpected alerts and notifies the user that the alert has
been accepted by throwing an
Dismisses unexpected alerts and notifies the user that the alert has
been dismissed by throwing an
Specifies the behavior of waiting for page loads in the driver.
Indicates the behavior is not set.
Waits for pages to load and ready state to be 'complete'.
Waits for pages to load and for ready state to be 'interactive' or 'complete'.
Does not wait for pages to load, returning immediately.
Base class for managing options specific to a browser driver.
Gets or sets the name of the browser.
Gets or sets the version of the browser.
Gets or sets the name of the platform on which the browser is running.
Gets or sets a value indicating whether the browser should accept self-signed
SSL certificates.
Gets or sets the value for describing how unexpected alerts are to be handled in the browser.
Defaults to .
Gets or sets the value for describing how the browser is to wait for pages to load in the browser.
Defaults to .
Gets or sets the to be used with this browser.
Provides a means to add additional capabilities not yet added as type safe options
for the specific browser driver.
The name of the capability to add.
The value of the capability to add.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling
where has already been added will overwrite the
existing value with the new value in .
Returns the for the specific browser driver with these
options included as capabilities. This does not copy the options. Further
changes will be reflected in the returned capabilities.
The for browser driver with these options.
Compares this object with another to see if there
are merge conflicts between them.
The object to compare with.
A object containing the status of the attempted merge.
Sets the logging preferences for this driver.
The type of log for which to set the preference.
Known log types can be found in the class.
The value to which to set the log level.
Returns a string representation of this .
A string representation of this .
Returns the current options as a .
The current options as a .
Adds a known capability to the list of known capabilities and associates it
with the type-safe property name of the options class to be used instead.
The name of the capability.
The name of the option property or method to be used instead.
Gets a value indicating whether the specified capability name is a known capability name which has a type-safe option.
The name of the capability to check.
if the capability name is known; otherwise .
Gets the name of the type-safe option for a given capability name.
The name of the capability to check.
The name of the type-safe option for the given capability name.
Generates the logging preferences dictionary for transmission as a desired capability.
The dictionary containing the logging preferences.
Generates the current options as a capabilities object for further processing.
A value indicating whether to generate capabilities compliant with the W3C WebDriver Specification.
A object representing the current options for further processing.
Gets or sets a value indicating whether the DriverOptions would conflict when merged with another option
Gets or sets the name of the name of the option that is in conflict.
Provides types of capabilities for the DesiredCapabilities object.
Capability name used for the browser name.
Capability name used for the browser version.
Capability name used for the platform name.
Capability name used for the browser platform.
Capability name used for the browser version.
Capability name used to indicate whether JavaScript is enabled for the browser.
Capability name used to indicate whether the browser can take screenshots.
Capability name used to indicate whether the browser can handle alerts.
Capability name used to indicate whether the browser can find elements via CSS selectors.
Capability name used for the browser proxy.
Capability name used to indicate whether the browser supports rotation.
Capability name used to indicate whether the browser accepts SSL certificates.
Capability name used to indicate whether the browser accepts SSL certificates on W3C Endpoints
Capability name used to indicate whether the browser uses native events.
Capability name used to indicate how the browser handles unexpected alerts.
Capability name used to indicate how the browser handles unhandled user prompts.
Capability name used to indicate the page load strategy for the browser.
Capability name used to indicate the logging preferences for the session.
Capability name used to disable the check for overlapping elements.
Capability name used to enable the profiling log for the session.
Capability name used to indicate whether the driver supports geolocation context.
Capability name used to indicate whether the driver supports application cache.
Capability name used to indicate whether the driver supports web storage.
Capability name used to indicate whether the driver supports setting the browser window's size and position.
Capability name used to get or set timeout values when creating a session.
Provides a way to send commands to the remote server
Initializes a new instance of the class using a command name and a JSON-encoded string for the parameters.
Name of the command
Parameters for the command as a JSON-encoded string.
Initializes a new instance of the class for a Session
Session ID the driver is using
Name of the command
Parameters for that command
Gets the SessionID of the command
Gets the command name
Gets the parameters of the command
Gets the parameters of the command as a JSON-encoded string.
Returns a string of the Command object
A string representation of the Command Object
Gets the command parameters as a , with a string key, and an object value.
The JSON-encoded string representing the command parameters.
A with a string keys, and an object value.
Provides the execution information for a .
POST verb for the command info
GET verb for the command info
DELETE verb for the command info
Initializes a new instance of the class
Method of the Command
Relative URL path to the resource used to execute the command
Gets the URL representing the path to the resource.
Gets the HTTP method associated with the command.
Creates the full URI associated with this command, substituting command
parameters for tokens in the URI template.
The base URI associated with the command.
The command containing the parameters with which
to substitute the tokens in the template.
The full URI for the command, with the parameters of the command
substituted for the tokens in the template.
Holds the information about all commands specified by the JSON wire protocol.
This class cannot be inherited, as it is intended to be a singleton, and
allowing subclasses introduces the possibility of multiple instances.
Initializes a new instance of the class.
Protected accessibility prevents a default instance from being created.
Gets the level of the W3C WebDriver specification that this repository supports.
Gets the for a .
The for which to get the information.
The for the specified command.
Tries to add a command to the list of known commands.
Name of the command.
The command information.
if the new command has been added successfully; otherwise, .
This method is used by WebDriver implementations to add additional custom driver-specific commands.
This method will not overwrite existing commands for a specific name, and will return
in that case.
Initializes the dictionary of commands for the CommandInfoRepository
Class to Create the capabilities of the browser you require for .
If you wish to use default values use the static methods
Initializes a new instance of the class
Name of the browser e.g. firefox, internet explorer, safari
Version of the browser
The platform it works on
Initializes a new instance of the class
Initializes a new instance of the class
Dictionary of items for the remote driver
DesiredCapabilities capabilities = new DesiredCapabilities(new Dictionary]]>(){["browserName","firefox"],["version",string.Empty],["javaScript",true]});
Initializes a new instance of the class
Name of the browser e.g. firefox, internet explorer, safari
Version of the browser
The platform it works on
Sets a value indicating whether the capabilities are
compliant with the W3C WebDriver specification.
Gets the browser name
Gets or sets the platform
Gets the browser version
Gets or sets a value indicating whether the browser accepts SSL certificates.
Gets the underlying Dictionary for a given set of capabilities.
Gets the underlying Dictionary for a given set of capabilities.
Gets the capability value with the specified name.
The name of the capability to get.
The value of the capability.
The specified capability name is not in the set of capabilities.
Gets a value indicating whether the browser has a given capability.
The capability to get.
Returns if the browser has the capability; otherwise, .
Gets a capability of the browser.
The capability to get.
An object associated with the capability, or
if the capability is not set on the browser.
Sets a capability of the browser.
The capability to get.
The value for the capability.
Return HashCode for the DesiredCapabilities that has been created
Integer of HashCode generated
Return a string of capabilities being used
String of capabilities being used
Compare two DesiredCapabilities and will return either true or false
DesiredCapabilities you wish to compare
true if they are the same or false if they are not
Returns a read-only version of this capabilities object.
A read-only version of this capabilities object.
Values describing the list of commands understood by a remote server using the JSON wire protocol.
Represents the Define Driver Mapping command
Represents the Status command.
Represents a New Session command
Represents the Get Session List command
Represents the Get Session Capabilities command
Represents a Browser close command
Represents a browser quit command
Represents a GET command
Represents a Browser going back command
Represents a Browser going forward command
Represents a Browser refreshing command
Represents adding a cookie command
Represents getting all cookies command
Represents getting cookie command
Represents deleting a cookie command
Represents Deleting all cookies command
Represents FindElement command
Represents FindElements command
Represents FindChildElement command
Represents FindChildElements command
Describes an element
Represents ClearElement command
Represents ClickElement command
Represents SendKeysToElements command
Represents TapElement command
Represents SubmitElement command
Represents GetCurrentWindowHandle command
Represents GetWindowHandles command
Represents SwitchToWindow command
Represents SwitchToFrame command
Represents SwitchToParentFrame command
Represents GetActiveElement command
Represents GetCurrentUrl command
Represents GetPageSource command
Represents GetTitle command
Represents ExecuteScript command
Represents ExecuteAsyncScript command
Represents GetElementText command
Represents GetElementTagName command
Represents IsElementSelected command
Represents IsElementEnabled command
Represents IsElementDisplayed command
Represents GetElementLocation command
Represents GetElementLocationOnceScrolledIntoView command
Represents GetElementSize command
Represents GetElementRect command
Represents GetElementAttribute command
Represents GetElementProperty command
Represents GetElementValueOfCSSProperty command
Represents ElementEquals command
Represents Screenshot command
Represents the ElementScreenshot command
Represents GetOrientation command
Represents SetOrientation command
Represents GetWindowSize command
Represents SetWindowSize command
Represents GetWindowPosition command
Represents SetWindowPosition command
Represents GetWindowRect command
Represents SetWindowRect command
Represents MaximizeWindow command
Represents MinimizeWindow command
Represents FullScreenWindow command
Represents the DismissAlert command
Represents the AcceptAlert command
Represents the GetAlertText command
Represents the SetAlertValue command
Represents the Authenticate command
Represents the ImplicitlyWait command
Represents the SetAsyncScriptTimeout command
Represents the SetTimeout command
Represents the SetTimeout command
Represents the Actions command.
Represents the CancelActions command.
Represents the MouseClick command.
Represents the MouseDoubleClick command.
Represents the MouseDown command.
Represents the MouseUp command.
Represents the MouseMoveTo command.
Represents the SendKeysToActiveElement command.
Represents the UploadFile command.
Represents the TouchSingleTap command.
Represents the TouchPress command.
Represents the TouchRelease command.
Represents the TouchMove command.
Represents the TouchScroll command.
Represents the TouchDoubleTap command.
Represents the TouchLongPress command.
Represents the TouchFlick command.
Represents the GetLocation command.
Represents the SetLocation command.
Represents the GetAppCache command.
Represents the application cache GetStatus command.
Represents the ClearAppCache command.
Represents the GetLocalStorageItem command.
Represents the GetLocalStorageKeys command.
Represents the SetLocalStorageItem command.
Represents the RemoveLocalStorageItem command.
Represents the ClearLocalStorage command.
Represents the GetLocalStorageSize command.
Represents the GetSessionStorageItem command.
Represents the GetSessionStorageKeys command.
Represents the SetSessionStorageItem command.
Represents the RemoveSessionStorageItem command.
Represents the ClearSessionStorage command.
Represents the GetSessionStorageSize command.
Represents the GetAvailableLogTypes command.
Represents the GetLog command.
Provides a mechanism to execute commands on the browser
Initializes a new instance of the class.
The that drives the browser.
The maximum amount of time to wait for each command.
Initializes a new instance of the class.
The that drives the browser.
The maximum amount of time to wait for each command.
if the KeepAlive header should be sent
with HTTP requests; otherwise, .
Gets the object associated with this executor.
Gets the that sends commands to the remote
end WebDriver implementation.
Executes a command
The command you wish to execute
A response from the browser
Releases all resources used by the .
Releases the unmanaged resources used by the and
optionally releases the managed resources.
to release managed and resources;
to only release unmanaged resources.
Provides a way to store errors from a response
Initializes a new instance of the class.
Initializes a new instance of the class using the specified values.
A containing names and values of
the properties of this .
Gets or sets the message from the response
Gets or sets the class name that threw the error
Gets or sets the screenshot of the error
Gets or sets the stack trace of the error
Provides a way of executing Commands over HTTP
Initializes a new instance of the class
Address of the WebDriver Server
The timeout within which the server must respond.
Initializes a new instance of the class
Address of the WebDriver Server
The timeout within which the server must respond.
if the KeepAlive header should be sent
with HTTP requests; otherwise, .
Gets the repository of objects containin information about commands.
Gets or sets an object to be used to proxy requests
between this and the remote end WebDriver
implementation.
Gets or sets a value indicating whether keep-alive is enabled for HTTP
communication between this and the
remote end WebDriver implementation.
Executes a command
The command you wish to execute
A response from the browser
Raises the event.
A that contains the event data.
Releases all resources used by the .
Releases the unmanaged resources used by the and
optionally releases the managed resources.
to release managed and resources;
to only release unmanaged resources.
Provides a way to send commands to the remote server
Gets the repository of objects containin information about commands.
Executes a command
The command you wish to execute
A response from the browser
Provides a way to start a server that understands remote commands
Starts the server.
Interface indicating the driver has a Session ID.
Gets the session ID of the current session.
Provides a way to convert a Char array to JSON
Checks if the object can be converted
Type of the object to see if can be converted
True if can be converted else false
Writes the Object to JSON
A JSON Writer object
Object to be converted
JSON Serializer object instance
Method not implemented
JSON Reader instance
Object type being read
Existing Value to be read
JSON Serializer instance
Object from JSON
Converts the response to JSON
Checks if the object can be converted
The object to be converted
True if it can be converted or false if can't be
Process the reader to return an object from JSON
A JSON reader
Type of the object
The existing value of the object
JSON Serializer
Object created from JSON
Writes objects to JSON. Currently not implemented
JSON Writer Object
Value to be written
JSON Serializer
Represents a file detector for determining whether a file
must be uploaded to a remote server.
Returns a value indicating whether a specified key sequence represents
a file name and path.
The sequence to test for file existence.
if the key sequence represents a file; otherwise, .
Class to Create the capabilities of the browser you require for .
If you wish to use default values use the static methods
Prevents a default instance of the class.
Gets the browser name
Gets or sets the platform
Gets the browser version
Gets or sets a value indicating whether the browser accepts SSL certificates.
Gets the underlying Dictionary for a given set of capabilities.
Gets the underlying Dictionary for a given set of capabilities.
Gets the capability value with the specified name.
The name of the capability to get.
The value of the capability.
The specified capability name is not in the set of capabilities.
Gets a value indicating whether the browser has a given capability.
The capability to get.
Returns if the browser has the capability; otherwise, .
Gets a capability of the browser.
The capability to get.
An object associated with the capability, or
if the capability is not set on the browser.
Converts the object to a .
The containing the capabilities.
Return HashCode for the DesiredCapabilities that has been created
Integer of HashCode generated
Return a string of capabilities being used
String of capabilities being used
Compare two DesiredCapabilities and will return either true or false
DesiredCapabilities you wish to compare
true if they are the same or false if they are not
Defines the interface through which the user can manipulate JavaScript alerts.
Initializes a new instance of the class.
The for which the alerts will be managed.
Gets the text of the alert.
Dismisses the alert.
Accepts the alert.
Sends keys to the alert.
The keystrokes to send.
Sets the user name and password in an alert prompting for credentials.
The user name to set.
The password to set.
Defines the interface through which the user can manipulate application cache.
Initializes a new instance of the class.
The for which the application cache will be managed.
Gets the current state of the application cache.
Defines an interface allowing the user to manipulate cookies on the current page.
Initializes a new instance of the class.
The driver that is currently in use
Gets all cookies defined for the current page.
Method for creating a cookie in the browser
that represents a cookie in the browser
Delete the cookie by passing in the name of the cookie
The name of the cookie that is in the browser
Delete a cookie in the browser by passing in a copy of a cookie
An object that represents a copy of the cookie that needs to be deleted
Delete All Cookies that are present in the browser
Method for returning a getting a cookie by name
name of the cookie that needs to be returned
A Cookie from the name
Method for getting a Collection of Cookies that are present in the browser
ReadOnlyCollection of Cookies in the browser
Defines the interface through which the user can discover where an element is on the screen.
Initializes a new instance of the class.
The to be located.
Gets the location of an element in absolute screen coordinates.
Gets the location of an element relative to the origin of the view port.
Gets the location of an element's position within the HTML DOM.
Gets a locator providing a user-defined location for this element.
Defines the interface through which the user can execute advanced keyboard interactions.
Initializes a new instance of the class.
The for which the keyboard will be managed.
Sends a sequence of keystrokes to the target.
A string representing the keystrokes to send.
Presses a key.
The key value representing the key to press.
The key value must be one of the values from the class.
Releases a key.
The key value representing the key to release.
The key value must be one of the values from the class.
Defines the interface through which the user can manipulate local storage.
Initializes a new instance of the class.
The for which the application cache will be managed.
Gets the number of items in local storage.
Returns local storage value given a key.
The key value for the item in storage.
A local storage value given a key, if present, otherwise returns null.
Returns a read-only list of local storage keys.
A read-only list of local storage keys.
Sets local storage entry using given key/value pair.
local storage key
local storage value
Removes local storage entry for the given key.
key to be removed from the list
Response value for the given key.
Removes all entries from the local storage.
Defines the interface through which the user can manipulate browser location.
Initializes a new instance of the class.
The for which the application cache will be managed.
Gets or sets a value indicating the physical location of the browser.
Provides a mechanism for examining logs for the driver during the test.
Initializes a new instance of the class.
Instance of the driver currently in use
Gets the list of available log types for this driver.
Gets the set of objects for a specified log.
The log for which to retrieve the log entries.
Log types can be found in the class.
The list of objects for the specified log.
Defines the interface through which the user can execute advanced mouse interactions.
Initializes a new instance of the class.
The for which the mouse will be managed.
Clicks at a set of coordinates using the primary mouse button.
An describing where to click.
Double-clicks at a set of coordinates.
A describing where to double-click.
Presses the primary mouse button at a set of coordinates.
A describing where to press the mouse button down.
Releases the primary mouse button at a set of coordinates.
A describing where to release the mouse button.
Moves the mouse to the specified set of coordinates.
A describing where to move the mouse to.
Moves the mouse to the specified set of coordinates.
A describing where to click.
A horizontal offset from the coordinates specified in .
A vertical offset from the coordinates specified in .
Clicks at a set of coordinates using the secondary mouse button.
A describing where to click.
Provides a mechanism for Navigating with the driver.
Initializes a new instance of the class
Driver in use
Move the browser back
Move the browser forward
Navigate to a url for your test
String of where you want the browser to go to
Navigate to a url for your test
Uri object of where you want the browser to go to
Refresh the browser
Provides a mechanism for setting options needed for the driver during the test.
Initializes a new instance of the class
Instance of the driver currently in use
Gets an object allowing the user to manipulate cookies on the page.
Gets an object allowing the user to manipulate the currently-focused browser window.
"Currently-focused" is defined as the browser window having the window handle
returned when IWebDriver.CurrentWindowHandle is called.
Gets an object allowing the user to examine the logs of the current driver instance.
Provides access to the timeouts defined for this driver.
An object implementing the interface.
Defines the interface through which the user can manipulate session storage.
Initializes a new instance of the class.
The driver instance.
Gets the number of items in session storage.
Returns session storage value given a key.
The key of the item in storage.
A session storage value given a key, if present, otherwise return null.
Returns a read-only list of session storage keys.
A read-only list of session storage keys.
Sets session storage entry using given key/value pair.
Session storage key
Session storage value
Removes session storage entry for the given key.
key to be removed from the list
Response value for the given key.
Removes all entries from the session storage.
Provides a mechanism for finding elements on the page with locators.
Initializes a new instance of the class
The driver that is currently in use
Move to a different frame using its index
The index of the
A WebDriver instance that is currently in use
Move to different frame using its name
name of the frame
A WebDriver instance that is currently in use
Move to a frame element.
a previously found FRAME or IFRAME element.
A WebDriver instance that is currently in use.
Select the parent frame of the currently selected frame.
An instance focused on the specified frame.
Change to the Window by passing in the name
Window handle or name of the window that you wish to move to
A WebDriver instance that is currently in use
Change the active frame to the default
Element of the default
Finds the active element on the page and returns it
Element that is active
Switches to the currently active modal dialog for this particular driver instance.
A handle to the dialog.
Defines the interface through which the user can define timeouts.
Initializes a new instance of the class
The driver that is currently in use
Gets or sets the implicit wait timeout, which is the amount of time the
driver should wait when searching for an element if it is not immediately
present.
When searching for a single element, the driver should poll the page
until the element has been found, or this timeout expires before throwing
a . When searching for multiple elements,
the driver should poll the page until at least one element has been found
or this timeout has expired.
Increasing the implicit wait timeout should be used judiciously as it
will have an adverse effect on test run time, especially when used with
slower location strategies like XPath.
Gets or sets the asynchronous script timeout, which is the amount
of time the driver should wait when executing JavaScript asynchronously.
This timeout only affects the
method.
Gets or sets the page load timeout, which is the amount of time the driver
should wait for a page to load when setting the
property.
Defines the interface through which the user can execute advanced touch screen interactions.
Initializes a new instance of the class.
The for which the touch screen will be managed.
Allows the execution of single tap on the screen, analogous to click using a Mouse.
The object representing the location on the screen,
usually an .
Allows the execution of the gesture 'down' on the screen. It is typically the first of a
sequence of touch gestures.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Allows the execution of the gesture 'up' on the screen. It is typically the last of a
sequence of touch gestures.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Allows the execution of the gesture 'move' on the screen.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Creates a scroll gesture that starts on a particular screen location.
The object representing the location on the screen
where the scroll starts, usually an .
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Creates a scroll gesture for a particular x and y offset.
The horizontal offset relative to the view port.
The vertical offset relative to the view port.
Allows the execution of double tap on the screen, analogous to click using a Mouse.
The object representing the location on the screen,
usually an .
Allows the execution of a long press gesture on the screen.
The object representing the location on the screen,
usually an .
Creates a flick gesture for the current view.
The horizontal speed in pixels per second.
The vertical speed in pixels per second.
Creates a flick gesture for the current view starting at a specific location.
The object representing the location on the screen
where the scroll starts, usually an .
The x offset relative to the viewport.
The y offset relative to the viewport.
The speed in pixels per second.
Provides a way to use the driver through
///
[TestFixture]
public class Testing
{
private IWebDriver driver;
[SetUp]
public void SetUp()
{
driver = new RemoteWebDriver(new Uri("http://127.0.0.1:4444/wd/hub"),DesiredCapabilities.InternetExplorer());
}
[Test]
public void TestGoogle()
{
driver.Navigate().GoToUrl("http://www.google.co.uk");
/*
* Rest of the test
*/
}
[TearDown]
public void TearDown()
{
driver.Quit();
}
}
The default command timeout for HTTP requests in a RemoteWebDriver instance.
Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
An object containing the desired capabilities of the browser.
Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
An object containing the desired capabilities of the browser.
Initializes a new instance of the class. This constructor defaults proxy to http://127.0.0.1:4444/wd/hub
URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
An object containing the desired capabilities of the browser.
Initializes a new instance of the class
URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
An object containing the desired capabilities of the browser.
Initializes a new instance of the class using the specified remote address, desired capabilities, and command timeout.
URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
An object containing the desired capabilities of the browser.
The maximum amount of time to wait for each command.
Initializes a new instance of the class
An object which executes commands for the driver.
An object containing the desired capabilities of the browser.
Gets or sets the URL the browser is currently displaying.
Gets the title of the current browser window.
Gets the source of the page last loaded by the browser.
Gets the current window handle, which is an opaque handle to this
window that uniquely identifies it within this driver instance.
Gets the window handles of open browser windows.
Gets an object for sending keystrokes to the browser.
Gets an object for sending mouse commands to the browser.
Gets a value indicating whether web storage is supported for this driver.
Gets an object for managing web storage.
Gets a value indicating whether manipulating the application cache is supported for this driver.
Gets an object for managing application cache.
Gets a value indicating whether manipulating geolocation is supported for this driver.
Gets an object for managing browser location.
Gets the capabilities that the RemoteWebDriver instance is currently using
Gets or sets the responsible for detecting
sequences of keystrokes representing file paths and names.
Gets the for the current session of this driver.
Gets a value indicating whether this object is a valid action executor.
Gets a value indicating whether or not the driver is compliant with the W3C WebDriver specification.
Gets the which executes commands for this driver.
Gets or sets the factory object used to create instances of
or its subclasses.
Finds the first element in the page that matches the object
By mechanism to find the object
IWebElement object so that you can interact with that object
IWebDriver driver = new InternetExplorerDriver();
IWebElement elem = driver.FindElement(By.Name("q"));
Finds the elements on the page by using the object and returns a ReadOnlyCollection of the Elements on the page
By mechanism to find the element
ReadOnlyCollection of IWebElement
IWebDriver driver = new InternetExplorerDriver();
ReadOnlyCollection]]> classList = driver.FindElements(By.ClassName("class"));
Closes the Browser
Close the Browser and Dispose of WebDriver
Method For getting an object to set the Speed
Returns an IOptions object that allows the driver to set the speed and cookies and getting cookies
IWebDriver driver = new InternetExplorerDriver();
driver.Manage().GetCookies();
Method to allow you to Navigate with WebDriver
Returns an INavigation Object that allows the driver to navigate in the browser
IWebDriver driver = new InternetExplorerDriver();
driver.Navigate().GoToUrl("http://www.google.co.uk");
Method to give you access to switch frames and windows
Returns an Object that allows you to Switch Frames and Windows
IWebDriver driver = new InternetExplorerDriver();
driver.SwitchTo().Frame("FrameName");
Executes JavaScript in the context of the currently selected frame or window
The JavaScript code to execute.
The arguments to the script.
The value returned by the script.
Executes JavaScript asynchronously in the context of the currently selected frame or window.
The JavaScript code to execute.
The arguments to the script.
The value returned by the script.
Finds the first element in the page that matches the ID supplied
ID of the element
IWebElement object so that you can interact with that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementById("id")
Finds the first element in the page that matches the ID supplied
ID of the Element
ReadOnlyCollection of Elements that match the object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsById("id")
Finds the first element in the page that matches the CSS Class supplied
className of the
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementByClassName("classname")
Finds a list of elements that match the class name supplied
CSS class Name on the element
ReadOnlyCollection of IWebElement object so that you can interact with those objects
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
Finds the first of elements that match the link text supplied
Link text of element
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementsByLinkText("linktext")
Finds a list of elements that match the link text supplied
Link text of element
ReadOnlyCollection]]> object so that you can interact with those objects
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
Finds the first of elements that match the part of the link text supplied
part of the link text
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementsByPartialLinkText("partOfLink")
Finds a list of elements that match the class name supplied
part of the link text
ReadOnlyCollection]]> objects so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByPartialLinkText("partOfTheLink")
Finds the first of elements that match the name supplied
Name of the element on the page
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
elem = driver.FindElementsByName("name")
Finds a list of elements that match the name supplied
Name of element
ReadOnlyCollect of IWebElement objects so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByName("name")
Finds the first of elements that match the DOM Tag supplied
DOM tag Name of the element being searched
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementsByTagName("tag")
Finds a list of elements that match the DOM Tag supplied
DOM tag Name of element being searched
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByTagName("tag")
Finds the first of elements that match the XPath supplied
xpath to the element
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementsByXPath("//table/tbody/tr/td/a");
Finds a list of elements that match the XPath supplied
xpath to the element
ReadOnlyCollection of IWebElement objects so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByXpath("//tr/td/a")
Finds the first element matching the specified CSS selector.
The CSS selector to match.
The first matching the criteria.
Finds all elements matching the specified CSS selector.
The CSS selector to match.
A containing all
IWebElements matching the criteria.
Gets a object representing the image of the page on the screen.
A object containing the image.
Dispose the RemoteWebDriver Instance
Performs the specified list of actions with this action executor.
The list of action sequences to perform.
Resets the input state of the action executor.
Escapes invalid characters in a CSS selector.
The selector to escape.
The selector with invalid characters escaped.
Executes commands with the driver
Command that needs executing
Parameters needed for the command
WebDriver Response
Find the element in the response
Response from the browser
Element from the page
Finds the elements that are in the response
Response from the browser
Collection of elements
Stops the client from running
if its in the process of disposing
Starts a session with the driver
Capabilities of the browser
Gets the capabilities as a dictionary supporting legacy drivers.
The dictionary to return.
A Dictionary consisting of the capabilities requested.
This method is only transitional. Do not rely on it. It will be removed
once browser driver capability formats stabilize.
Gets the capabilities as a dictionary.
The dictionary to return.
A Dictionary consisting of the capabilities requested.
This method is only transitional. Do not rely on it. It will be removed
once browser driver capability formats stabilize.
Executes a command with this driver .
A value representing the command to execute.
A containing the names and values of the parameters of the command.
A containing information about the success or failure of the command and any data returned by the command.
Starts the command executor, enabling communication with the browser.
Stops the command executor, ending further communication with the browser.
Finds an element matching the given mechanism and value.
The mechanism by which to find the element.
The value to use to search for the element.
The first matching the given criteria.
Finds all elements matching the given mechanism and value.
The mechanism by which to find the elements.
The value to use to search for the elements.
A collection of all of the IWebElements matching the given criteria.
Executes JavaScript in the context of the currently selected frame or window using a specific command.
The JavaScript code to execute.
The name of the command to execute.
The arguments to the script.
The value returned by the script.
Converts the arguments to JavaScript objects.
The arguments.
The list of the arguments converted to JavaScript objects.
RemoteWebElement allows you to have access to specific items that are found on the page
The property name that represents a web element in the wire protocol.
The property name that represents a web element in the legacy dialect of the wire protocol.
Initializes a new instance of the class.
The instance hosting this element.
The ID assigned to the element.
Gets the used to find this element.
Gets the tag name of this element.
The property returns the tag name of the
element, not the value of the name attribute. For example, it will return
"input" for an element specified by the HTML markup <input name="foo" />.
Thrown when the target element is no longer valid in the document DOM.
Gets the innerText of this element, without any leading or trailing whitespace,
and with other whitespace collapsed.
Thrown when the target element is no longer valid in the document DOM.
Gets a value indicating whether or not this element is enabled.
The property will generally
return for everything except explicitly disabled input elements.
Thrown when the target element is no longer valid in the document DOM.
Gets a value indicating whether or not this element is selected.
This operation only applies to input elements such as checkboxes,
options in a select element and radio buttons.
Thrown when the target element is no longer valid in the document DOM.
Gets a object containing the coordinates of the upper-left corner
of this element relative to the upper-left corner of the page.
Thrown when the target element is no longer valid in the document DOM.
Gets a object containing the height and width of this element.
Thrown when the target element is no longer valid in the document DOM.
Gets a value indicating whether or not this element is displayed.
The property avoids the problem
of having to parse an element's "style" attribute to determine
visibility of an element.
Thrown when the target element is no longer valid in the document DOM.
Gets the point where the element would be when scrolled into view.
Gets the coordinates identifying the location of this element using
various frames of reference.
Gets the internal ID of the element.
Gets the ID of the element
This property is internal to the WebDriver instance, and is
not intended to be used in your code. The element's ID has no meaning
outside of internal WebDriver usage, so it would be improper to scope
it as public. However, both subclasses of
and the parent driver hosting the element have a need to access the
internal element ID. Therefore, we have two properties returning the
same value, one scoped as internal, the other as protected.
Clears the content of this element.
If this element is a text entry element, the
method will clear the value. It has no effect on other elements. Text entry elements
are defined as elements with INPUT or TEXTAREA tags.
Thrown when the target element is no longer valid in the document DOM.
Simulates typing text into the element.
The text to type into the element.
The text to be typed may include special characters like arrow keys,
backspaces, function keys, and so on. Valid special keys are defined in
.
Thrown when the target element is not enabled.
Thrown when the target element is not visible.
Thrown when the target element is no longer valid in the document DOM.
Submits this element to the web server.
If this current element is a form, or an element within a form,
then this will be submitted to the web server. If this causes the current
page to change, then this method will attempt to block until the new page
is loaded.
Thrown when the target element is no longer valid in the document DOM.
Clicks this element.
Click this element. If the click causes a new page to load, the
method will attempt to block until the page has loaded. After calling the
method, you should discard all references to this
element unless you know that the element and the page will still be present.
Otherwise, any further operations performed on this element will have an undefined
behavior.
Thrown when the target element is not enabled.
Thrown when the target element is not visible.
Thrown when the target element is no longer valid in the document DOM.
Gets the value of the specified attribute for this element.
The name of the attribute.
The attribute's current value. Returns a if the
value is not set.
The method will return the current value
of the attribute, even if the value has been modified after the page has been
loaded. Note that the value of the following attributes will be returned even if
there is no explicit attribute on the element:
Attribute name
Value returned if not explicitly specified
Valid element types
-
checked
checked
Check Box
-
selected
selected
Options in Select elements
-
disabled
disabled
Input and other UI elements
Thrown when the target element is no longer valid in the document DOM.
Gets the value of a JavaScript property of this element.
The name JavaScript the JavaScript property to get the value of.
The JavaScript property's current value. Returns a if the
value is not set or the property does not exist.
Thrown when the target element is no longer valid in the document DOM.
Gets the value of a CSS property of this element.
The name of the CSS property to get the value of.
The value of the specified CSS property.
The value returned by the
method is likely to be unpredictable in a cross-browser environment.
Color values should be returned as hex strings. For example, a
"background-color" property set as "green" in the HTML source, will
return "#008000" for its value.
Thrown when the target element is no longer valid in the document DOM.
Finds all IWebElements within the current context
using the given mechanism.
The locating mechanism to use.
A of all WebElements
matching the current criteria, or an empty list if nothing matches.
Finds the first using the given method.
The locating mechanism to use.
The first matching on the current context.
If no element matches the criteria.
Finds the first of elements that match the link text supplied
Link text of element
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementByLinkText("linktext")
Finds the first of elements that match the link text supplied
Link text of element
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByLinkText("linktext")
Finds the first element in the page that matches the ID supplied
ID of the element
IWebElement object so that you can interact with that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementById("id")
Finds the first element in the page that matches the ID supplied
ID of the Element
ReadOnlyCollection of Elements that match the object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsById("id")
Finds the first of elements that match the name supplied
Name of the element
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
elem = driver.FindElementsByName("name")
Finds a list of elements that match the name supplied
Name of element
ReadOnlyCollect of IWebElement objects so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByName("name")
Finds the first of elements that match the DOM Tag supplied
tag name of the element
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementsByTagName("tag")
Finds a list of elements that match the DOM Tag supplied
DOM Tag of the element on the page
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByTagName("tag")
Finds the first element in the page that matches the CSS Class supplied
CSS class name of the element on the page
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementByClassName("classname")
Finds a list of elements that match the class name supplied
CSS class name of the elements on the page
ReadOnlyCollection of IWebElement object so that you can interact with those objects
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByClassName("classname")
Finds the first of elements that match the XPath supplied
xpath to the element
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementsByXPath("//table/tbody/tr/td/a");
Finds a list of elements that match the XPath supplied
xpath to element on the page
ReadOnlyCollection of IWebElement objects so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByXpath("//tr/td/a")
Finds the first of elements that match the part of the link text supplied
part of the link text
IWebElement object so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
IWebElement elem = driver.FindElementsByPartialLinkText("partOfLink")
Finds a list of elements that match the link text supplied
part of the link text
ReadOnlyCollection]]> objects so that you can interact that object
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.Firefox());
ReadOnlyCollection]]> elem = driver.FindElementsByPartialLinkText("partOfTheLink")
Finds the first element matching the specified CSS selector.
The id to match.
The first matching the criteria.
Finds all elements matching the specified CSS selector.
The CSS selector to match.
A containing all
IWebElements matching the criteria.
Gets a object representing the image of this element on the screen.
A object containing the image.
Returns a string that represents the current .
A string that represents the current .
Method to get the hash code of the element
Integer of the hash code for the element
Compares if two elements are equal
Object to compare against
A boolean if it is equal or not
Converts an object into an object that represents an element for the wire protocol.
A that represents an element in the wire protocol.
Finds a child element matching the given mechanism and value.
The mechanism by which to find the element.
The value to use to search for the element.
The first matching the given criteria.
Finds all child elements matching the given mechanism and value.
The mechanism by which to find the elements.
The value to use to search for the elements.
A collection of all of the IWebElements matching the given criteria.
Executes a command on this element using the specified parameters.
The to execute against this element.
A containing names and values of the parameters for the command.
The object containing the result of the command execution.
Creates a from a dictionary containing a reference to an element.
The dictionary containing the element reference.
A containing the information from the specified dictionary.
Gets a value indicating wether the specified dictionary represents a reference to a web element.
The dictionary to check.
if the dictionary contains an element reference; otherwise, .
Provides remote access to the API.
Initializes a new instance of the class.
The driver instance.
Gets the local storage for the site currently opened in the browser.
Gets the session storage for the site currently opened in the browser.
Defines the interface through which the user can manipulate the browser window.
Initializes a new instance of the class.
Instance of the driver currently in use
Gets or sets the position of the browser window relative to the upper-left corner of the screen.
When setting this property, it should act as the JavaScript window.moveTo() method.
Gets or sets the size of the outer browser window, including title bars and window borders.
When setting this property, it should act as the JavaScript window.resizeTo() method.
Maximizes the current window if it is not already maximized.
Minimizes the current window if it is not already maximized.
Sets the current window to full screen if it is not already in that state.
Handles reponses from the browser
Initializes a new instance of the class
Initializes a new instance of the class
Session ID in use
Gets or sets the value from JSON.
Gets or sets the session ID.
Gets or sets the status value of the response.
Gets a value indicating whether this response is compliant with the WebDriver specification.
Returns a new from a JSON-encoded string.
The JSON string to deserialize into a .
A object described by the JSON string.
Returns this object as a JSON-encoded string.
A JSON-encoded string representing this object.
Returns the object as a string.
A string with the Session ID, status value, and the value from JSON.
Provides a mechanism for maintaining a session for a test
Initializes a new instance of the class
Key for the session in use
Get the value of the key
The key in use
Get the hash code of the key
The hash code of the key
Compares two Sessions
Session to compare
True if they are equal or False if they are not
Gives properties to get a stack trace
Initializes a new instance of the class.
Initializes a new instance of the class using the given property values.
A containing the names and values for the properties of this .
Gets or sets the value of the filename in the stack
Gets or sets the value of the Class name in the stack trace
Gets or sets the line number
Gets or sets the Method name in the stack trace
Gets a string representation of the object.
A string representation of the object.
Holds the information about all commands specified by the JSON wire protocol.
This class cannot be inherited, as it is intended to be a singleton, and
allowing subclasses introduces the possibility of multiple instances.
Initializes a new instance of the class.
Gets the level of the W3C WebDriver specification that this repository supports.
Initializes the dictionary of commands for the CommandInfoRepository
Represents an error condition from a remote end using the W3C specification
dialect of the wire protocol.
Represents the element click intercepted error.
Represents the element not selectable error.
Represents the element not interactable error.
Represents the element not visible error.
TODO: Remove this string; it is no longer valid in the specification.
Represents the insecure certificate error.
Represents the invalid argument error.
Represents the invalid cookie domain error.
Represents the invalid coordinates error.
Represents the invalid element coordinates error.
TODO: Remove this string; it is no longer valid in the specification.
Represents the invalid element state error.
Represents the invalid selector error.
Represents the invalid session ID error.
Represents the unhandled JavaScript error.
Represents the move target out of bounds error.
Represents the no such alert error.
Represents the no such cookie error.
Represents the no such element error.
Represents the no such alert frame.
Represents the no such alert window.
Represents the script timeout error.
Represents the session not created error.
Represents the stale element reference error.
Represents the timeout error.
Represents the unable to set cookie error.
Represents the unable to capture screen error.
Represents the unexpected alert open error.
Represents the unknown command error.
Represents an unknown error.
Represents the unknown method error.
Represents the unsupported operation error.
Converts a string error to a value.
The error string to convert.
The converted value.
Holds the information about all commands specified by the JSON wire protocol.
This class cannot be inherited, as it is intended to be a singleton, and
allowing subclasses introduces the possibility of multiple instances.
Initializes a new instance of the class.
Gets the level of the W3C WebDriver specification that this repository supports.
Initializes the dictionary of commands for the CommandInfoRepository
Exposes the service provided by a native WebDriver server executable.
Initializes a new instance of the class.
The full path to the directory containing the executable providing the service to drive the browser.
The port on which the driver executable should listen.
The file name of the driver service executable.
A URL at which the driver service executable may be downloaded.
If the path specified is or an empty string.
If the specified driver service executable does not exist in the specified directory.
Gets the Uri of the service.
Gets or sets the host name of the service. Defaults to "localhost."
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.
Gets or sets the port of the service.
Gets or sets a value indicating whether the initial diagnostic information is suppressed
when starting the driver server executable. Defaults to , meaning
diagnostic information should be shown by the driver server executable.
Gets a value indicating whether the service is running.
Gets or sets a value indicating whether the command prompt window of the service should be hidden.
Gets the process ID of the running driver service executable. Returns 0 if the process is not running.
Gets the executable file name of the driver service.
Gets the command-line arguments for the driver service.
Gets a value indicating the time to wait for an initial connection before timing out.
Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
Gets a value indicating whether the service has a shutdown API that can be called to terminate
it gracefully before forcing a termination.
Gets a value indicating whether the service is responding to HTTP requests.
Releases all resources associated with this .
Starts the DriverService.
Finds the specified driver service executable.
The file name of the executable to find.
A URL at which the driver service executable may be downloaded.
The directory containing the driver service executable.
If the specified driver service executable does not exist in the current directory or in a directory on the system path.
Releases all resources associated with this .
if the Dispose method was explicitly called; otherwise, .
Stops the DriverService.
Waits until a the service is initialized, or the timeout set
by the property is reached.
if the service is properly started and receiving HTTP requests;
otherwise; .
The exception that is thrown when an element is not visible.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
Provides a mechanism to write tests against Edge
Initializes a new instance of the class.
Initializes a new instance of the class using the specified options.
The to be used with the Edge driver.
Initializes a new instance of the class using the specified driver service.
The used to initialize the driver.
Initializes a new instance of the class using the specified path
to the directory containing EdgeDriver.exe.
The full path to the directory containing EdgeDriver.exe.
Initializes a new instance of the class using the specified path
to the directory containing EdgeDriver.exe and options.
The full path to the directory containing EdgeDriver.exe.
The to be used with the Edge driver.
Initializes a new instance of the class using the specified path
to the directory containing EdgeDriver.exe, options, and command timeout.
The full path to the directory containing EdgeDriver.exe.
The to be used with the Edge driver.
The maximum amount of time to wait for each command.
Initializes a new instance of the class using the specified
and options.
The to use.
The used to initialize the driver.
Initializes a new instance of the class using the specified .
The to use.
The to be used with the Edge driver.
The maximum amount of time to wait for each command.
Exposes the service provided by the native MicrosoftWebDriver executable.
Initializes a new instance of the class.
The full path to the EdgeDriver executable.
The file name of the EdgeDriver executable.
The port on which the EdgeDriver executable should listen.
Gets or sets the value of the host adapter on which the Edge driver service should listen for connections.
Gets or sets the value of the package the Edge driver service will launch and automate.
Gets or sets a value indicating whether the service should use verbose logging.
Gets or sets a value indicating whether the instance
should use the a protocol dialect compliant with the W3C WebDriver Specification.
Setting this property to a non- value for driver
executables matched to versions of Windows before the 2018 Fall Creators
Update will result in a the driver executable shutting down without
execution, and all commands will fail. Do not set this property unless
you are certain your version of the MicrosoftWebDriver.exe supports the
--w3c and --jwp command-line arguments.
Gets a value indicating whether the service has a shutdown API that can be called to terminate
it gracefully before forcing a termination.
Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
Gets the command-line arguments for the driver service.
Creates a default instance of the EdgeDriverService.
A EdgeDriverService that implements default settings.
Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable.
The directory containing the EdgeDriver executable.
A EdgeDriverService using a random port.
Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable with the given name.
The directory containing the EdgeDriver executable.
The name of the EdgeDriver executable file.
A EdgeDriverService using a random port.
Creates a default instance of the EdgeDriverService using a specified path to the EdgeDriver executable with the given name and listening port.
The directory containing the EdgeDriver executable.
The name of the EdgeDriver executable file
The port number on which the driver will listen
A EdgeDriverService using the specified port.
Specifies the behavior of waiting for page loads in the Edge driver.
Indicates the behavior is not set.
Waits for pages to load and ready state to be 'complete'.
Waits for pages to load and for ready state to be 'interactive' or 'complete'.
Does not wait for pages to load, returning immediately.
Class to manage options specific to
EdgeOptions options = new EdgeOptions();
For use with EdgeDriver:
EdgeDriver driver = new EdgeDriver(options);
For use with RemoteWebDriver:
RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
Gets or sets a value indicating whether the browser should be launched using
InPrivate browsing.
Gets or sets the URL of the page with which the browser will be navigated to on launch.
Adds a path to an extension that is to be used with the Edge driver.
The full path and file name of the extension.
Adds a list of paths to an extensions that are to be used with the Edge driver.
An array of full paths with file names of extensions to add.
Adds a list of paths to an extensions that are to be used with the Edge driver.
An of full paths with file names of extensions to add.
Provides a means to add additional capabilities not yet added as type safe options
for the Edge driver.
The name of the capability to add.
The value of the capability to add.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling where
has already been added will overwrite the existing value with the new value in
Returns DesiredCapabilities for Edge with these options included as
capabilities. This copies the options. Further changes will not be
reflected in the returned capabilities.
The DesiredCapabilities for Edge with these options.
Provides a mechanism to get elements off the page for test
Initializes a new instance of the class
Driver in use
Id of the element
The exception that is thrown when an element is not visible.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when an element is not visible.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when an element is not visible.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when an element is not visible.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
Represents the binary associated with Firefox.
The class is responsible for instantiating the
Firefox process, and the operating system environment in which it runs.
Initializes a new instance of the class.
Initializes a new instance of the class located at a specific file location.
Full path and file name to the Firefox executable.
Gets or sets the timeout to wait for Firefox to be available for command execution.
Gets the associated with this .
Gets a value indicating whether the current operating system is Linux.
Gets a containing string key-value pairs
representing any operating system environment variables beyond the defaults.
Starts Firefox using the specified profile and command-line arguments.
The to use with this instance of Firefox.
The command-line arguments to use in starting Firefox.
Sets a variable to be used in the Firefox execution environment.
The name of the environment variable to set.
The value of the environment variable to set.
Waits for the process to complete execution.
Releases all resources used by the .
Returns a String that represents the current Object.
A String that represents the current Object.
Starts the Firefox process.
Releases the unmanaged resources used by the and optionally
releases the managed resources.
to release managed and resources;
to only release unmanaged resources.
Provides a way to access Firefox to run tests.
When the FirefoxDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
start your test.
In the case of the FirefoxDriver, you can specify a named profile to be used, or you can let the
driver create a temporary, anonymous profile. A custom extension allowing the driver to communicate
to the browser will be installed into the profile.
[TestFixture]
public class Testing
{
private IWebDriver driver;
[SetUp]
public void SetUp()
{
driver = new FirefoxDriver();
}
[Test]
public void TestGoogle()
{
driver.Navigate().GoToUrl("http://www.google.co.uk");
/*
* Rest of the test
*/
}
[TearDown]
public void TearDown()
{
driver.Quit();
}
}
The name of the ICapabilities setting to use to define a custom Firefox profile.
The name of the ICapabilities setting to use to define a custom location for the
Firefox executable.
The default port on which to communicate with the Firefox extension.
Indicates whether native events is enabled by default for this platform.
Indicates whether the driver will accept untrusted SSL certificates.
Indicates whether the driver assume the issuer of untrusted certificates is untrusted.
Initializes a new instance of the class.
Initializes a new instance of the class using the specified options. Uses the Mozilla-provided Marionette driver implementation.
The to be used with the Firefox driver.
Initializes a new instance of the class using the specified driver service. Uses the Mozilla-provided Marionette driver implementation.
The used to initialize the driver.
Initializes a new instance of the class using the specified path
to the directory containing geckodriver.exe.
The full path to the directory containing geckodriver.exe.
Initializes a new instance of the class using the specified path
to the directory containing geckodriver.exe and options.
The full path to the directory containing geckodriver.exe.
The to be used with the Firefox driver.
Initializes a new instance of the class using the specified path
to the directory containing geckodriver.exe, options, and command timeout.
The full path to the directory containing geckodriver.exe.
The to be used with the Firefox driver.
The maximum amount of time to wait for each command.
Initializes a new instance of the class using the specified options, driver service, and timeout. Uses the Mozilla-provided Marionette driver implementation.
The to use.
The to be used with the Firefox driver.
Initializes a new instance of the class using the specified options, driver service, and timeout. Uses the Mozilla-provided Marionette driver implementation.
The to use.
The to be used with the Firefox driver.
The maximum amount of time to wait for each command.
Gets or sets the responsible for detecting
sequences of keystrokes representing file paths and names.
The Firefox driver does not allow a file detector to be set,
as the server component of the Firefox driver only allows uploads from
the local computer environment. Attempting to set this property has no
effect, but does not throw an exception. If you are attempting to run
the Firefox driver remotely, use in
conjunction with a standalone WebDriver server.
Gets a value indicating whether the Firefox driver instance uses
Mozilla's Marionette implementation. This is a temporary property
and will be removed when Marionette is available for the release
channel of Firefox.
In derived classes, the method prepares the environment for test execution.
Provides a way of executing Commands using the FirefoxDriver.
Initializes a new instance of the class.
The on which to make the connection.
The creating the connection.
The name of the host on which to connect to the Firefox extension (usually "localhost").
The maximum amount of time to wait for each command.
Gets the repository of objects containin information about commands.
Executes a command
The command you wish to execute
A response from the browser
Releases all resources used by the .
Releases the unmanaged resources used by the and
optionally releases the managed resources.
to release managed and resources;
to only release unmanaged resources.
Represents the valid values of logging levels available with the Firefox driver (geckodriver.exe).
Represents the Trace value, the most detailed logging level available.
Represents the Debug value
Represents the Config value
Represents the Info value
Represents the Warn value
Represents the Error value
Represents the Fatal value, the least detailed logging level available.
Represents that the logging value is unspecified, and should be the default level.
Provides methods for launching Firefox with the WebDriver extension installed.
Initializes a new instance of the class.
The on which to make the connection.
The creating the connection.
The name of the host on which to connect to the Firefox extension (usually "localhost").
Gets the for communicating with this server.
Starts the server.
Releases all resources used by the .
Releases the unmanaged resources used by the and optionally
releases the managed resources.
to release managed and resources;
to only release unmanaged resources.
Exposes the service provided by the native FirefoxDriver executable.
Initializes a new instance of the class.
The full path to the Firefox driver executable.
The file name of the Firefox driver executable.
The port on which the Firefox driver executable should listen.
Gets or sets the location of the Firefox binary executable.
Gets or sets the port used by the driver executable to communicate with the browser.
Gets or sets the value of the IP address of the host adapter on which the
service should listen for connections.
Gets or sets a value indicating whether to connect to an already-running
instance of Firefox.
Gets or sets a value indicating whether to open the Firefox Browser Toolbox
when Firefox is launched.
Gets a value indicating the time to wait for an initial connection before timing out.
Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
Gets a value indicating whether the service has a shutdown API that can be called to terminate
it gracefully before forcing a termination.
Gets the command-line arguments for the driver service.
Creates a default instance of the FirefoxDriverService.
A FirefoxDriverService that implements default settings.
Creates a default instance of the FirefoxDriverService using a specified path to the Firefox driver executable.
The directory containing the Firefox driver executable.
A FirefoxDriverService using a random port.
Creates a default instance of the FirefoxDriverService using a specified path to the Firefox driver executable with the given name.
The directory containing the Firefox driver executable.
The name of the Firefox driver executable file.
A FirefoxDriverService using a random port.
Returns the Firefox driver filename for the currently running platform
The file name of the Firefox driver service executable.
Provides the ability to install extensions into a .
Initializes a new instance of the class.
The name of the file containing the Firefox extension.
WebDriver attempts to resolve the parameter
by looking first for the specified file in the directory of the calling assembly,
then using the full path to the file, if a full path is provided.
Initializes a new instance of the class.
The name of the file containing the Firefox extension.
The ID of the resource within the assembly containing the extension
if the file is not present in the file system.
WebDriver attempts to resolve the parameter
by looking first for the specified file in the directory of the calling assembly,
then using the full path to the file, if a full path is provided. If the file is
not found in the file system, WebDriver attempts to locate a resource in the
executing assembly with the name specified by the
parameter.
Installs the extension into a profile directory.
The Firefox profile directory into which to install the extension.
Class to manage options specific to
Used with the marionette executable wires.exe.
FirefoxOptions options = new FirefoxOptions();
For use with FirefoxDriver:
FirefoxDriver driver = new FirefoxDriver(options);
For use with RemoteWebDriver:
RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
Initializes a new instance of the class.
Initializes a new instance of the class for the given profile and binary.
The to use in the options.
The to use in the options.
The to copy into the options.
Gets or sets a value indicating whether to use the legacy driver implementation.
Gets or sets the object to be used with this instance.
Gets or sets the path and file name of the Firefox browser executable.
Gets or sets the logging level of the Firefox driver.
Adds an argument to be used in launching the Firefox browser.
The argument to add.
Arguments must be preceeded by two dashes ("--").
Adds a list arguments to be used in launching the Firefox browser.
An array of arguments to add.
Each argument must be preceeded by two dashes ("--").
Adds a list arguments to be used in launching the Firefox browser.
An array of arguments to add.
Each argument must be preceeded by two dashes ("--").
Sets a preference in the profile used by Firefox.
Name of the preference to set.
Value of the preference to set.
Sets a preference in the profile used by Firefox.
Name of the preference to set.
Value of the preference to set.
Sets a preference in the profile used by Firefox.
Name of the preference to set.
Value of the preference to set.
Sets a preference in the profile used by Firefox.
Name of the preference to set.
Value of the preference to set.
Sets a preference in the profile used by Firefox.
Name of the preference to set.
Value of the preference to set.
Provides a means to add additional capabilities not yet added as type safe options
for the Firefox driver.
The name of the capability to add.
The value of the capability to add.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling
where has already been added will overwrite the
existing value with the new value in .
Also, by default, calling this method adds capabilities to the options object passed to
geckodriver.exe.
Provides a means to add additional capabilities not yet added as type safe options
for the Firefox driver.
The name of the capability to add.
The value of the capability to add.
Indicates whether the capability is to be set as a global
capability for the driver instead of a Firefox-specific option.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling
where has already been added will overwrite the
existing value with the new value in
Returns DesiredCapabilities for Firefox with these options included as
capabilities. This does not copy the options. Further changes will be
reflected in the returned capabilities.
The DesiredCapabilities for Firefox with these options.
Provides the ability to edit the preferences associated with a Firefox profile.
Initializes a new instance of the class.
Initializes a new instance of the class using a
specific profile directory.
The directory containing the profile.
Initializes a new instance of the class using a
specific profile directory.
The directory containing the profile.
Delete the source directory of the profile upon cleaning.
Gets or sets the port on which the profile connects to the WebDriver extension.
Gets the directory containing the profile.
Gets or sets a value indicating whether to delete this profile after use with
the .
Gets or sets a value indicating whether native events are enabled.
Gets or sets a value indicating whether to always load the library for allowing Firefox
to execute commands without its window having focus.
The property is only used on Linux.
Gets or sets a value indicating whether Firefox should accept SSL certificates which have
expired, signed by an unknown authority or are generally untrusted. Set to true
by default.
Gets or sets a value indicating whether Firefox assume untrusted SSL certificates
come from an untrusted issuer or are self-signed. Set to true by default.
Due to limitations within Firefox, it is easy to find out if a certificate has expired
or does not match the host it was served for, but hard to find out if the issuer of the
certificate is untrusted. By default, it is assumed that the certificates were not
issued from a trusted certificate authority.
If you receive an "untrusted site" prompt it Firefox when using a certificate that was
issued by valid issuer, but the certificate has expired or is being served served for
a different host (e.g. production certificate served in a testing environment) set this
to false.
Converts a base64-encoded string into a .
The base64-encoded string containing the profile contents.
The constructed .
Adds a Firefox Extension to this profile
The path to the new extension
Sets a preference in the profile.
The name of the preference to add.
A value to add to the profile.
Sets a preference in the profile.
The name of the preference to add.
A value to add to the profile.
Sets a preference in the profile.
The name of the preference to add.
A value to add to the profile.
Set proxy preferences for this profile.
The object defining the proxy
preferences for the profile.
Writes this in-memory representation of a profile to disk.
Cleans this Firefox profile.
If this profile is a named profile that existed prior to
launching Firefox, the method removes the WebDriver
Firefox extension. If the profile is an anonymous profile, the profile
is deleted.
Converts the profile into a base64-encoded string.
A base64-encoded string containing the contents of the profile.
Adds the WebDriver extension for Firefox to the profile.
Removes the WebDriver extension for Firefox to the profile, for use with non-legacy
FirefoxDriver instances that use geckodriver.
Internal implementation to set proxy preferences for this profile.
The object defining the proxy
preferences for the profile.
Generates a random directory name for the profile.
A random directory name for the profile.
Deletes the lock files for a profile.
Installs all extensions in the profile in the directory on disk.
Deletes the cache of extensions for this profile, if the cache exists.
If the extensions cache does not exist for this profile, the
method performs no operations, but
succeeds.
Writes the user preferences to the profile.
Reads the existing preferences from the profile.
A containing key-value pairs representing the preferences.
Assumes that we only really care about the preferences, not the comments
Sets a preference for a manually specified proxy.
The protocol for which to set the proxy.
The setting for the proxy.
Allows the user to enumerate and access existing named Firefox profiles.
Initializes a new instance of the class.
Gets a containing FirefoxProfiles
representing the existing named profiles for Firefox.
Gets a with a given name.
The name of the profile to get.
A with a given name.
Returns if no profile with the given name exists.
Allows the user to control elements on a page in Firefox.
Initializes a new instance of the class.
The instance hosting this element.
The ID assigned to the element.
Determines whether two instances are equal.
The to compare with the current .
if the specified is equal to the
current ; otherwise, .
Serves as a hash function for a .
A hash code for the current .
Represents the executable file for Firefox.
Initializes a new instance of the class.
The path and file name to the Firefox executable.
Gets the full path to the executable.
Sets the library path for the Firefox executable environment.
The used to execute the binary.
Locates the Firefox binary by platform.
The full path to the binary.
Retrieves an environment variable
Name of the variable.
Default value of the variable.
The value of the variable. If no variable with that name is set, returns the default.
Retrieves the platform specific environment property name which contains the library path.
The platform specific environment property name which contains the library path.
Walk a PATH to locate binaries with a specified name. Binaries will be searched for in the
order they are provided.
The binary names to search for.
The first binary found matching that name.
Defines the interface through which the mutex port for establishing communication
with the WebDriver extension can be locked.
Locks the mutex port.
The describing the amount of time to wait for
the mutex port to become available.
Unlocks the mutex port.
Parses and reads an INI file.
Initializes a new instance of the class.
The full path to the .INI file to be read.
Gets a containing the names of the sections in the .INI file.
Gets a value from the .INI file.
The section in which to find the key-value pair.
The key of the key-value pair.
The value associated with the given section and key.
Provides a mutex-like lock on a socket.
Initializes a new instance of the class.
Port to use to acquire the lock.
The class will attempt to acquire the
specified port number, and wait for it to become free.
Locks the mutex port.
The describing the amount of time to wait for
the mutex port to become available.
Unlocks the mutex port.
Releases all resources associated with this
Represents the preferences used by a profile in Firefox.
Initializes a new instance of the class.
A set of preferences that cannot be modified once set.
A set of default preferences.
Sets a preference.
The name of the preference to set.
A value give the preference.
If the preference already exists in the currently-set list of preferences,
the value will be updated.
Sets a preference.
The name of the preference to set.
A value give the preference.
If the preference already exists in the currently-set list of preferences,
the value will be updated.
Sets a preference.
The name of the preference to set.
A value give the preference.
If the preference already exists in the currently-set list of preferences,
the value will be updated.
Gets a preference from the list of preferences.
The name of the preference to retrieve.
The value of the preference, or an empty string if the preference is not set.
Appends this set of preferences to the specified set of preferences.
A dictionary containing the preferences to which to
append these values.
If the preference already exists in ,
the value will be updated.
Writes the preferences to a file.
The full path to the file to be written.
Represents the application cache status.
AppCache status is uncached
AppCache status is idle
AppCache status is checkint
AppCache status is downloading
AppCache status is updated-ready
AppCache status is obsolete
Defines an interface allowing the user to access application cache status
Gets the current state of the application cache.
Interface allowing the user to determine if the driver instance supports application cache.
Gets a value indicating whether manipulating the application cache is supported for this driver.
Gets an object for managing application cache.
Interface allowing the user to determine if the driver instance supports geolocation.
Gets a value indicating whether manipulating geolocation is supported for this driver.
Gets an object for managing browser location.
Interface allowing the user to determine if the driver instance supports web storage.
Gets a value indicating whether web storage is supported for this driver.
Gets an object for managing web storage.
Represents the local storage for the site currently opened in the browser.
Each site has its own separate storage area.
Gets the number of items in local storage.
Returns value of the local storage given a key.
key to for a local storage entry
Value of the local storage entry as given a key.
Returns the set of keys associated with local storage.
Returns the set of keys associated with local storage as .
Adds key/value pair to local storage.
storage key
storage value
Removes key/value pair from local storage.
key to remove from storage
Value from local storage as string for the given key.
Clears local storage.
Interface for location context
Gets or sets a value indicating the physical location of the browser.
Represents the session storage for the site currently opened in the browser.
Each site has its own separate storage area.
Gets the number of items in session storage.
Returns value of the session storage given a key.
key to for a session storage entry
Value of the session storage entry as given a key.
Returns the set of keys associated with session storage.
Returns the set of keys associated with session storage as .
Adds key/value pair to session storage.
storage key
storage value
Removes key/value pair from session storage.
key to remove from storage
Value from session storage as string for the given key.
Clears local storage.
Represents both local and session storage for the site currently opened in the browser.
Gets the local storage for the site currently opened in the browser.
Gets the session storage for the site currently opened in the browser.
Represents the physical location of the browser.
Initializes a new instance of the class.
latitude for current location
longitude for current location
altitude for current location
Gets the latitude of the current location.
Gets the longitude of the current location.
Gets the altitude of the current location.
Retuns string represenation for current location.
Returns string reprsentation for current location.
Defines the interface through which the user can manipulate JavaScript alerts.
Gets the text of the alert.
Dismisses the alert.
Accepts the alert.
Sends keys to the alert.
The keystrokes to send.
Sets the user name and password in an alert prompting for credentials.
The user name to set.
The password to set.
Interface determining whether the driver implementation allows detection of files
when sending keystrokes to a file upload element.
Gets or sets the responsible for detecting
sequences of keystrokes representing file paths and names.
Capabilities of the browser that you are going to use
Gets the capability value with the specified name.
The name of the capability to get.
The value of the capability.
The specified capability name is not in the set of capabilities.
Gets a value indicating whether the browser has a given capability.
The capability to get.
Returns if the browser has the capability; otherwise, .
Gets a capability of the browser.
The capability to get.
An object associated with the capability, or
if the capability is not set on the browser.
Defines an interface allowing the user to manipulate cookies on the current page.
Gets all cookies defined for the current page.
Adds a cookie to the current page.
The object to be added.
Gets a cookie with the specified name.
The name of the cookie to retrieve.
The containing the name. Returns
if no cookie with the specified name is found.
Deletes the specified cookie from the page.
The to be deleted.
Deletes the cookie with the specified name from the page.
The name of the cookie to be deleted.
Deletes all cookies from the page.
Provides a way to access Internet Explorer to run your tests by creating a InternetExplorerDriver instance
When the WebDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
start your test.
[TestFixture]
public class Testing
{
private IWebDriver driver;
[SetUp]
public void SetUp()
{
driver = new InternetExplorerDriver();
}
[Test]
public void TestGoogle()
{
driver.Navigate().GoToUrl("http://www.google.co.uk");
/*
* Rest of the test
*/
}
[TearDown]
public void TearDown()
{
driver.Quit();
driver.Dispose();
}
}
Initializes a new instance of the class.
Initializes a new instance of the class with the desired
options.
The used to initialize the driver.
Initializes a new instance of the class using the specified driver service.
The used to initialize the driver.
Initializes a new instance of the class using the specified path
to the directory containing IEDriverServer.exe.
The full path to the directory containing IEDriverServer.exe.
Initializes a new instance of the class using the specified path
to the directory containing IEDriverServer.exe and options.
The full path to the directory containing IEDriverServer.exe.
The used to initialize the driver.
Initializes a new instance of the class using the specified path
to the directory containing IEDriverServer.exe, options, and command timeout.
The full path to the directory containing IEDriverServer.exe.
The used to initialize the driver.
The maximum amount of time to wait for each command.
Initializes a new instance of the class using the specified
and options.
The to use.
The used to initialize the driver.
Initializes a new instance of the class using the specified
, , and command timeout.
The to use.
The used to initialize the driver.
The maximum amount of time to wait for each command.
Gets or sets the responsible for detecting
sequences of keystrokes representing file paths and names.
The IE driver does not allow a file detector to be set,
as the server component of the IE driver (IEDriverServer.exe) only
allows uploads from the local computer environment. Attempting to set
this property has no effect, but does not throw an exception. If you
are attempting to run the IE driver remotely, use
in conjunction with a standalone WebDriver server.
Gets the capabilities as a dictionary supporting legacy drivers.
The dictionary to return.
A Dictionary consisting of the capabilities requested.
This method is only transitional. Do not rely on it. It will be removed
once browser driver capability formats stabilize.
Represents the valid values of logging levels available with the IEDriverServer.exe.
Represents the Trace value, the most detailed logging level available.
Represents the Debug value
Represents the Info value
Represents the Warn value
Represents the Error value
Represents the Fatal value, the least detailed logging level available.
Exposes the service provided by the native IEDriverServer executable.
Initializes a new instance of the class.
The full path to the IEDriverServer executable.
The file name of the IEDriverServer executable.
The port on which the IEDriverServer executable should listen.
Gets or sets the value of the host adapter on which the IEDriverServer should listen for connections.
Gets or sets the location of the log file written to by the IEDriverServer.
Gets or sets the logging level used by the IEDriverServer.
Gets or sets the path to which the supporting library of the IEDriverServer.exe is extracted.
Defaults to the temp directory if this property is not set.
The IEDriverServer.exe requires extraction of a supporting library to perform some of its functions. Setting
This library is extracted to the temp directory if this property is not set. If the property is set, it must
be set to a valid directory.
Gets or sets the comma-delimited list of IP addresses that are approved to
connect to this instance of the IEDriverServer. Defaults to an empty string,
which means only the local loopback address can connect.
Gets the command-line arguments for the driver service.
Creates a default instance of the InternetExplorerDriverService.
A InternetExplorerDriverService that implements default settings.
Creates a default instance of the InternetExplorerDriverService using a specified path to the IEDriverServer executable.
The directory containing the IEDriverServer executable.
A InternetExplorerDriverService using a random port.
Creates a default instance of the InternetExplorerDriverService using a specified path to the IEDriverServer executable with the given name.
The directory containing the IEDriverServer executable.
The name of the IEDriverServer executable file.
A InternetExplorerDriverService using a random port.
Specifies the scroll behavior of elements scrolled into view in the IE driver.
Indicates the behavior is unspecified.
Scrolls elements to align with the top of the viewport.
Scrolls elements to align with the bottom of the viewport.
Class to manage options specific to
InternetExplorerOptions options = new InternetExplorerOptions();
options.IntroduceInstabilityByIgnoringProtectedModeSettings = true;
For use with InternetExplorerDriver:
InternetExplorerDriver driver = new InternetExplorerDriver(options);
For use with RemoteWebDriver:
RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
Gets the name of the capability used to store IE options in
a object.
Gets or sets a value indicating whether to ignore the settings of the Internet Explorer Protected Mode.
Gets or sets a value indicating whether to ignore the zoom level of Internet Explorer .
Gets or sets a value indicating whether to use native events in interacting with elements.
Gets or sets a value indicating whether to require the browser window to have focus before interacting with elements.
Gets or sets the initial URL displayed when IE is launched. If not set, the browser launches
with the internal startup page for the WebDriver server.
By setting the to
and this property to a correct URL, you can launch IE in the Internet Protected Mode zone. This can be helpful
to avoid the flakiness introduced by ignoring the Protected Mode settings. Nevertheless, setting Protected Mode
zone settings to the same value in the IE configuration is the preferred method.
Gets or sets the value for describing how elements are scrolled into view in the IE driver. Defaults
to scrolling the element to the top of the viewport.
Gets or sets a value indicating whether to enable persistently sending WM_MOUSEMOVE messages
to the IE window during a mouse hover.
Gets or sets the amount of time the driver will attempt to look for a newly launched instance
of Internet Explorer.
Gets or sets the amount of time the driver will attempt to look for the file selection
dialog when attempting to upload a file.
Gets or sets a value indicating whether to force the use of the Windows CreateProcess API
when launching Internet Explorer. The default value is .
Gets or sets a value indicating whether to force the use of the Windows ShellWindows API
when attaching to Internet Explorer. The default value is .
Gets or sets the command line arguments used in launching Internet Explorer when the
Windows CreateProcess API is used. This property only has an effect when the
is .
Gets or sets a value indicating whether to use the supplied
settings on a per-process basis, not updating the system installed proxy setting.
This property is only valid when setting a , where the
property is either ,
, or , and is
otherwise ignored. Defaults to .
Gets or sets a value indicating whether to clear the Internet Explorer cache
before launching the browser. When set to , clears the
system cache for all instances of Internet Explorer, even those already running
when the driven instance is launched. Defaults to .
Provides a means to add additional capabilities not yet added as type safe options
for the Internet Explorer driver.
The name of the capability to add.
The value of the capability to add.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling
where has already been added will overwrite the
existing value with the new value in .
Also, by default, calling this method adds capabilities to the options object passed to
IEDriverServer.exe.
Provides a means to add additional capabilities not yet added as type safe options
for the Internet Explorer driver.
The name of the capability to add.
The value of the capability to add.
Indicates whether the capability is to be set as a global
capability for the driver instead of a IE-specific option.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling where
has already been added will overwrite the existing value with the new value in
Returns DesiredCapabilities for IE with these options included as
capabilities. This copies the options. Further changes will not be
reflected in the returned capabilities.
The DesiredCapabilities for IE with these options.
InternetExplorerWebElement allows you to have access to specific items that are found on the page.
[Test]
public void TestGoogle()
{
driver = new InternetExplorerDriver();
InternetExplorerWebElement elem = driver.FindElement(By.Name("q"));
elem.SendKeys("Cheese please!");
}
Initializes a new instance of the class.
Driver in use.
ID of the element.
Defines an object responsible for detecting sequences of keystrokes
representing file paths and names.
Returns a value indicating whether a specified key sequence represents
a file name and path.
The sequence to test for file existence.
if the key sequence represents a file; otherwise, .
Defines the interface through which the user can determine the capabilities of a driver.
Gets the object describing the driver's capabilities.
Provides access to input devices for advanced user interactions.
Gets an object for sending keystrokes to the browser.
Gets an object for sending mouse commands to the browser.
Interface implemented by each driver that allows access to touch screen capabilities.
Gets the device representing the touch screen.
Defines the interface through which the user can execute JavaScript.
Executes JavaScript in the context of the currently selected frame or window.
The JavaScript code to execute.
The arguments to the script.
The value returned by the script.
The method executes JavaScript in the context of
the currently selected frame or window. This means that "document" will refer
to the current document. If the script has a return value, then the following
steps will be taken:
- For an HTML element, this method returns a
- For a number, a is returned
- For a boolean, a is returned
- For all other cases a is returned.
- For an array,we check the first element, and attempt to return a
of that type, following the rules above. Nested lists are not
supported.
- If the value is null or there is no return value,
is returned.
Arguments must be a number (which will be converted to a ),
a , a or a .
An exception will be thrown if the arguments do not meet these criteria.
The arguments will be made available to the JavaScript via the "arguments" magic
variable, as if the function were called via "Function.apply"
Executes JavaScript asynchronously in the context of the currently selected frame or window.
The JavaScript code to execute.
The arguments to the script.
The value returned by the script.
Provides methods representing basic keyboard actions.
Sends a sequence of keystrokes to the target.
A string representing the keystrokes to send.
Presses a key.
The key value representing the key to press.
The key value must be one of the values from the class.
Releases a key.
The key value representing the key to release.
The key value must be one of the values from the class.
Defines the interface through which the user can discover where an element is on the screen.
Gets the location of an element on the screen, scrolling it into view
if it is not currently on the screen.
Gets the coordinates identifying the location of this element using
various frames of reference.
Interface allowing handling of driver logs.
Gets the list of available log types for this driver.
Gets the set of objects for a specified log.
The log for which to retrieve the log entries.
Log types can be found in the class.
The list of objects for the specified log.
Provides methods representing basic mouse actions.
Clicks at a set of coordinates using the primary mouse button.
An describing where to click.
Double-clicks at a set of coordinates.
A describing where to double-click.
Presses the primary mouse button at a set of coordinates.
A describing where to press the mouse button down.
Releases the primary mouse button at a set of coordinates.
A describing where to release the mouse button.
Moves the mouse to the specified set of coordinates.
A describing where to move the mouse to.
Moves the mouse to the specified set of coordinates.
A describing where to click.
A horizontal offset from the coordinates specified in .
A vertical offset from the coordinates specified in .
Clicks at a set of coordinates using the secondary mouse button.
A describing where to click.
Defines an interface allowing the user to access the browser's history and to
navigate to a given URL.
Move back a single entry in the browser's history.
Move a single "item" forward in the browser's history.
Does nothing if we are on the latest page viewed.
Load a new web page in the current browser window.
The URL to load. It is best to use a fully qualified URL
Calling the method will load a new web page in the current browser window.
This is done using an HTTP GET operation, and the method will block until the
load is complete. This will follow redirects issued either by the server or
as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
for any duration of time, it is best to wait until this timeout is over, since
should the underlying page change while your test is executing the results of
future calls against this interface will be against the freshly loaded page.
Load a new web page in the current browser window.
The URL to load.
Calling the method will load a new web page in the current browser window.
This is done using an HTTP GET operation, and the method will block until the
load is complete. This will follow redirects issued either by the server or
as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
for any duration of time, it is best to wait until this timeout is over, since
should the underlying page change while your test is executing the results of
future calls against this interface will be against the freshly loaded page.
Refreshes the current page.
Provides methods that allow the creation of action sequences to enable
advanced user interactions.
Adds an action to the built set of actions. Adding an action will
add a "tick" to the set of all actions to be executed.
The action to add to the set of actions
A self reference.
Adds an action to the built set of actions. Adding an action will
add a "tick" to the set of all actions to be executed. Only one action
for each input device may be added for a single tick.
The set actions to add to the existing set of actions.
A self reference.
Converts the set of actions in this to a .
A suitable for transmission across the wire.
The collection returned is read-only.
Returns a string that represents the current .
A string that represents the current .
Provides values that indicate from where element offsets for MoveToElement
are calculated.
Offsets are calculated from the top-left corner of the element.
Offsets are calcuated from the center of the element.
Provides a mechanism for building advanced interactions with the browser.
Initializes a new instance of the class.
The object on which the actions built will be performed.
Sends a modifier key down message to the browser.
The key to be sent.
A self-reference to this .
If the key sent is not is not one
of , , ,
, ,,
,.
Sends a modifier key down message to the specified element in the browser.
The element to which to send the key command.
The key to be sent.
A self-reference to this .
If the key sent is not is not one
of , , ,
, ,,
,.
Sends a modifier key up message to the browser.
The key to be sent.
A self-reference to this .
If the key sent is not is not one
of , , ,
, ,,
,.
Sends a modifier up down message to the specified element in the browser.
The element to which to send the key command.
The key to be sent.
A self-reference to this .
If the key sent is not is not one
of , , ,
, ,,
,.
Sends a sequence of keystrokes to the browser.
The keystrokes to send to the browser.
A self-reference to this .
Sends a sequence of keystrokes to the specified element in the browser.
The element to which to send the keystrokes.
The keystrokes to send to the browser.
A self-reference to this .
Clicks and holds the mouse button down on the specified element.
The element on which to click and hold.
A self-reference to this .
Clicks and holds the mouse button at the last known mouse coordinates.
A self-reference to this .
Releases the mouse button on the specified element.
The element on which to release the button.
A self-reference to this .
Releases the mouse button at the last known mouse coordinates.
A self-reference to this .
Clicks the mouse on the specified element.
The element on which to click.
A self-reference to this .
Clicks the mouse at the last known mouse coordinates.
A self-reference to this .
Double-clicks the mouse on the specified element.
The element on which to double-click.
A self-reference to this .
Double-clicks the mouse at the last known mouse coordinates.
A self-reference to this .
Moves the mouse to the specified element.
The element to which to move the mouse.
A self-reference to this .
Moves the mouse to the specified offset of the top-left corner of the specified element.
The element to which to move the mouse.
The horizontal offset to which to move the mouse.
The vertical offset to which to move the mouse.
A self-reference to this .
Moves the mouse to the specified offset of the top-left corner of the specified element.
The element to which to move the mouse.
The horizontal offset to which to move the mouse.
The vertical offset to which to move the mouse.
The value from which to calculate the offset.
A self-reference to this .
Moves the mouse to the specified offset of the last known mouse coordinates.
The horizontal offset to which to move the mouse.
The vertical offset to which to move the mouse.
A self-reference to this .
Right-clicks the mouse on the specified element.
The element on which to right-click.
A self-reference to this .
Right-clicks the mouse at the last known mouse coordinates.
A self-reference to this .
Performs a drag-and-drop operation from one element to another.
The element on which the drag operation is started.
The element on which the drop is performed.
A self-reference to this .
Performs a drag-and-drop operation on one element to a specified offset.
The element on which the drag operation is started.
The horizontal offset to which to move the mouse.
The vertical offset to which to move the mouse.
A self-reference to this .
Builds the sequence of actions.
A composite which can be used to perform the actions.
Performs the currently built action.
Gets the instance of the specified .
The to get the location of.
The of the .
Adds an action to current list of actions to be performed.
The to be added.
Represents a sequence of actions to be performed in the target browser.
Initializes a new instance of the class.
The input device that executes this sequence of actions.
Initializes a new instance of the class.
The input device that executes this sequence of actions.
the initial size of the sequence.
Gets the count of actions in the sequence.
Adds an action to the sequence.
The action to add to the sequence.
A self-reference to this sequence of actions.
Converts this action sequence into an object suitable for serializing across the wire.
A containing the actions in this sequence.
Returns a string that represents the current .
A string that represents the current .
Defines an action for releasing the currently held mouse button.
This action can be called for an element different than the one
ClickAndHoldAction was called for. However, if this action is
performed out of sequence (without holding down the mouse button,
for example) the results will be different.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Performs this action.
Defines an action for clicking on an element.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Performs this action.
Defines an action for clicking and holding the mouse button on an element.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Performs this action.
Defines an action that consists of a list of other actions to be performed in the browser.
Adds an action to the list of actions to be performed.
An to be appended to the
list of actions to be performed.
A self reference.
Performs the actions defined in this list of actions.
Defines an action for clicking the secondary mouse button on an element, displaying a context menu.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Performs this action.
Defines an action for double-clicking on an element.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Performs this action.
Creates a double tap gesture on a touch screen.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Performs the action.
Creates a flick gesture on a touch screen.
Initializes a new instance of the class.
The with which the action will be performed.
The horizontal speed in pixels per second.
The vertical speed in pixels per second.
Initializes a new instance of the class for use with the specified element.
The with which the action will be performed.
An describing an element at which to perform the action.
The x offset relative to the viewport.
The y offset relative to the viewport.
The speed in pixels per second.
Performs the action.
Provides methods by which an interaction with the browser can be performed.
Performs this action on the browser.
Provides location of the element using various frames of reference.
Gets the location of an element in absolute screen coordinates.
Gets the location of an element relative to the origin of the view port.
Gets the location of an element's position within the HTML DOM.
Gets a locator providing a user-defined location for this element.
Defines an action for keyboard interaction with the browser.
Initializes a new instance of the class.
The to use in performing the action.
The to use in setting focus to the element on which to perform the action.
An object providing the element on which to perform the action.
Gets the keyboard with which to perform the action.
Focuses on the element on which the action is to be performed.
Defines an action for mouse interaction with the browser.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Gets the coordinates at which to perform the mouse action.
Gets the mouse with which to perform the action.
Moves the mouse to the location at which to perform the action.
Defines an action for keyboard interaction with the browser using a single modifier key.
Initializes a new instance of the class.
The to use in performing the action.
The to use in setting focus to the element on which to perform the action.
An object providing the element on which to perform the action.
The modifier key (, , ) to use in the action.
Gets the key with which to perform the action.
Defines an action for keyboard interaction with the browser.
Initializes a new instance of the class.
The to use in performing the action.
An object providing the element on which to perform the action.
Gets the touch screen with which to perform the action.
Gets the location at which to perform the action.
Defines an action for keyboard and mouse interaction with the browser.
Initializes a new instance of the class for the given element.
An object that provides coordinates for this action.
Initializes a new instance of the class.
This action will take place in the context of the previous action's coordinates.
Gets the target of the action providing coordinates of the action.
Base class for all input devices for actions.
Initializes a new instance of the class.
The unique name of the input device represented by this class.
Gets the unique name of this input device.
Gets the kind of device for this input device.
Returns a value for this input device that can be transmitted across the wire to a remote end.
A representing this action.
Creates a pause action for synchronization with other action sequences.
The representing the action.
Creates a pause action for synchronization with other action sequences.
A representing the duration
of the pause. Note that pauses to synchronize
with other action sequences for other devices.
The representing the action.
Returns a hash code for the current .
A hash code for the current .
Returns a string that represents the current .
A string that represents the current .
Enumerated values for the kinds of devices available.
Represents the null device.
Represents a key-based device, primarily for entering text.
Represents a pointer-based device, such as a mouse, pen, or stylus.
Represents a single interaction for a given input device.
Initializes a new instance of the class.
The input device which performs this action.
Gets the device for which this action is intended.
Returns a value for this action that can be transmitted across the wire to a remote end.
A representing this action.
Gets a value indicating whether this action is valid for the specified type of input device.
The type of device to check.
if the action is valid for the specified type of input device;
otherwise, .
Defines an action for pressing a modifier key (Shift, Alt, or Control) on the keyboard.
Initializes a new instance of the class.
The to use in performing the action.
The to use in setting focus to the element on which to perform the action.
An object providing the element on which to perform the action.
The modifier key (, , ,
, ,,
,) to use in the action.
Performs this action.
Represents a key input device, such as a keyboard.
Initializes a new instance of the class.
Initializes a new instance of the class, given the device's name.
The unique name of this input device.
Gets the type of device for this input device.
Converts this input device into an object suitable for serializing across the wire.
A representing this input device.
Creates a key-down action for simulating a press of a key.
The unicode character to be sent.
The representing the action.
Creates a key-up action for simulating a release of a key.
The unicode character to be sent.
The representing the action.
Defines an action for releasing a modifier key (Shift, Alt, or Control) on the keyboard.
Initializes a new instance of the class.
The to use in performing the action.
The to use in setting focus to the element on which to perform the action.
An object providing the element on which to perform the action.
The modifier key (, , ,
, ,,
,) to use in the action.
Performs this action.
Creates a long press gesture on a touch screen.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Performs the action.
Defines an action for moving the mouse to a specified location.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Performs this action.
Defines an action for moving the mouse to a specified offset from its current location.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
The horizontal offset from the origin of the target to which to move the mouse.
The vertical offset from the origin of the target to which to move the mouse.
Performs this action.
Represents a pause action.
Initializes a new instance of the class.
The input device on which to execute the pause.
Initializes a new instance of the class.
The input device on which to execute the pause.
The length of time to pause for.
Returns a value for this action that can be transmitted across the wire to a remote end.
A representing this action.
Gets a value indicating whether this action is valid for the specified type of input device.
The type of device to check.
if the action is valid for the specified type of input device;
otherwise, .
Represents the origin of the coordinates for mouse movement.
The coordinate origin is the origin of the view port of the browser.
The origin of the movement is the most recent pointer location.
The origin of the movement is the center of the element specified.
Specifies the type of pointer a pointer device represents.
The pointer device is a mouse.
The pointer device is a pen or stylus.
The pointer device is a touch screen device.
Specifies the button used during a pointer down or up action.
The button used is the primary button.
The button used is the middle button or mouse wheel.
The button used is the secondary button.
Represents a pointer input device, such as a stylus, mouse, or finger on a touch screen.
Initializes a new instance of the class.
Initializes a new instance of the class.
The kind of pointer represented by this input device.
Initializes a new instance of the class.
The kind of pointer represented by this input device.
The unique name for this input device.
Gets the type of device for this input device.
Returns a value for this input device that can be transmitted across the wire to a remote end.
A representing this action.
Creates a pointer down action.
The button of the pointer that should be pressed.
The action representing the pointer down gesture.
Creates a pointer up action.
The button of the pointer that should be released.
The action representing the pointer up gesture.
Creates a pointer move action to a specific element.
The used as the target for the move.
The horizontal offset from the origin of the move.
The vertical offset from the origin of the move.
The length of time the move gesture takes to complete.
The action representing the pointer move gesture.
Creates a pointer move action to an absolute coordinate.
The origin of coordinates for the move. Values can be relative to
the view port origin, or the most recent pointer position.
The horizontal offset from the origin of the move.
The vertical offset from the origin of the move.
The length of time the move gesture takes to complete.
The action representing the pointer move gesture.
Thrown when passing CoordinateOrigin.Element into origin.
Users should us the other CreatePointerMove overload to move to a specific element.
Creates a pointer cancel action.
The action representing the pointer cancel gesture.
Presses a touch screen at a given location.
Initializes a new instance of the class.
The with which the action will be performed.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Performs the action.
Presses a touch screen at a given location.
Initializes a new instance of the class.
The with which the action will be performed.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Performs the action.
Presses a touch screen at a given location.
Initializes a new instance of the class.
The with which the action will be performed.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Performs the action.
Creates a double tap gesture on a touch screen.
Initializes a new instance of the class.
The with which the action will be performed.
The horizontal offset relative to the view port.
The vertical offset relative to the view port.
Initializes a new instance of the class for use with the specified element.
The with which the action will be performed.
An describing an element at which to perform the action.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Performs the action.
Defines an action for sending a sequence of keystrokes to an element.
Initializes a new instance of the class.
The to use in performing the action.
The to use in setting focus to the element on which to perform the action.
An object providing the element on which to perform the action.
The key sequence to send.
Performs this action.
Creates a single tap gesture on a touch screen.
Initializes a new instance of the class.
The with which the action will be performed.
An describing an element at which to perform the action.
Performs the action.
Provides a mechanism for building advanced interactions with the browser.
Initializes a new instance of the class.
The object on which the actions built will be performed.
Taps the touch screen on the specified element.
The element on which to tap.
A self-reference to this .
Presses down at the specified location on the screen.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
A self-reference to this .
Releases a press at the specified location on the screen.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
A self-reference to this .
Moves to the specified location on the screen.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
A self-reference to this .
Scrolls the touch screen beginning at the specified element.
The element on which to begin scrolling.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
A self-reference to this .
Double-taps the touch screen on the specified element.
The element on which to double-tap.
A self-reference to this .
Presses and holds on the touch screen on the specified element.
The element on which to press and hold
A self-reference to this .
Scrolls the touch screen to the specified offset.
The horizontal offset relative to the view port.
The vertical offset relative to the view port.
A self-reference to this .
Flicks the current view.
The horizontal speed in pixels per second.
The vertical speed in pixels per second.
A self-reference to this .
Flicks the current view starting at a specific location.
The element at which to start the flick.
The x offset relative to the viewport.
The y offset relative to the viewport.
The speed in pixels per second.
A self-reference to this .
Utility class used to execute "asynchronous" scripts. This class should
only be used by browsers that do not natively support asynchronous
script execution.
Warning: this class is intended for internal use
only. This class will be removed without warning after all
native asynchronous implementations have been completed.
Initializes a new instance of the class.
An object capable of executing JavaScript.
Gets or sets the timeout for the script executor.
Executes a JavaScript script asynchronously.
The script to execute.
An array of objects used as arguments in the script.
The object which is the return value of the script.
if the object executing the function doesn't support JavaScript.
if the page reloads during the JavaScript execution.
if the timeout expires during the JavaScript execution.
Encapsulates methods for working with files.
Recursively copies a directory.
The source directory to copy.
The destination directory.
if the copy is completed; otherwise .
Recursively deletes a directory, retrying on error until a timeout.
The directory to delete.
This method does not throw an exception if the delete fails.
Searches for a file with the specified name.
The name of the file to find.
The full path to the directory where the file can be found,
or an empty string if the file does not exist in the locations searched.
This method looks first in the directory of the currently executing
assembly. If the specified file is not there, the method then looks in
each directory on the PATH environment variable, in order.
Gets the directory of the currently executing assembly.
The directory of the currently executing assembly.
Generates the full path to a random directory name in the temporary directory, following a naming pattern..
The pattern to use in creating the directory name, following standard
.NET string replacement tokens.
The full path to the random directory name in the temporary directory.
Interface allowing execution of W3C Specification-compliant actions.
Gets a value indicating whether this object is a valid action executor.
Performs the specified list of actions with this action executor.
The list of action sequences to perform.
Resets the input state of the action executor.
Defines the interface through which the user finds elements by their CSS class.
Finds the first element matching the specified CSS class.
The CSS class to match.
The first matching the criteria.
Finds all elements matching the specified CSS class.
The CSS class to match.
A containing all
IWebElements matching the criteria.
Defines the interface through which the user finds elements by their cascading style sheet (CSS) selector.
Finds the first element matching the specified CSS selector.
The id to match.
The first matching the criteria.
Finds all elements matching the specified CSS selector.
The CSS selector to match.
A containing all
IWebElements matching the criteria.
Defines the interface through which the user finds elements by their ID.
Finds the first element matching the specified id.
The id to match.
The first matching the criteria.
Finds all elements matching the specified id.
The id to match.
A containing all
IWebElements matching the criteria.
Defines the interface through which the user finds elements by their link text.
Finds the first element matching the specified link text.
The link text to match.
The first matching the criteria.
Finds all elements matching the specified link text.
The link text to match.
A containing all
IWebElements matching the criteria.
Defines the interface through which the user finds elements by their name.
Finds the first element matching the specified name.
The name to match.
The first matching the criteria.
Finds all elements matching the specified name.
The name to match.
A containing all
IWebElements matching the criteria.
Defines the interface through which the user finds elements by a partial match on their link text.
Finds the first element matching the specified partial link text.
The partial link text to match.
The first matching the criteria.
Finds all elements matching the specified partial link text.
The partial link text to match.
A containing all
IWebElements matching the criteria.
Defines the interface through which the user finds elements by their tag name.
Finds the first element matching the specified tag name.
The tag name to match.
The first matching the criteria.
Finds all elements matching the specified tag name.
The tag name to match.
A containing all
IWebElements matching the criteria.
Defines the interface through which the user finds elements by XPath.
Finds the first element matching the specified XPath query.
The XPath query to match.
The first matching the criteria.
Finds all elements matching the specified XPath query.
The XPath query to match.
A containing all
IWebElements matching the criteria.
Defines the interface through which the user can access the driver used to find an element.
Gets the underlying Dictionary for a given set of capabilities.
Defines the interface through which the framework can serialize an element to the wire protocol.
Gets the internal ID of the element.
Converts an object into an object that represents an element for the wire protocol.
A that represents an element in the wire protocol.
Defines the interface through which the user can access the driver used to find an element.
Gets the used to find this element.
Defines the interface through which the user can discover if there is an underlying element to be used.
Gets the wrapped by this object.
Encapsulates methods for working with ports.
Finds a random, free port to be listened on.
A random, free port to be listened on.
Encapsulates methods for finding and extracting WebDriver resources.
Gets a string representing the version of the Selenium assembly.
Gets a string representing the platform family on which the Selenium assembly is executing.
Gets a that contains the resource to use.
A file name in the file system containing the resource to use.
A string representing the resource name embedded in the
executing assembly, if it is not found in the file system.
A Stream from which the resource can be read.
Thrown if neither the file nor the embedded resource can be found.
The GetResourceStream method searches for the specified resource using the following
algorithm:
- In the same directory as the calling assembly.
- In the full path specified by the argument.
- Inside the calling assembly as an embedded resource.
Returns a value indicating whether a resource exists with the specified ID.
ID of the embedded resource to check for.
if the resource exists in the calling assembly; otherwise .
Class to Create the capabilities of the browser you require for .
If you wish to use default values use the static methods
Initializes a new instance of the class
Initializes a new instance of the class
Dictionary of items for the remote driver
Gets the browser name
Gets the capability value with the specified name.
The name of the capability to get.
The value of the capability.
The specified capability name is not in the set of capabilities.
Gets the underlying Dictionary for a given set of capabilities.
Gets the internal capabilities dictionary.
Gets a value indicating whether the browser has a given capability.
The capability to get.
Returns if the browser has the capability; otherwise, .
Gets a capability of the browser.
The capability to get.
An object associated with the capability, or
if the capability is not set on the browser.
Converts the object to a .
The containing the capabilities.
Return a string of capabilities being used
String of capabilities being used
Represents a cookie returned to the driver by the browser.
Initializes a new instance of the class with a specific name,
value, domain, path and expiration date.
The name of the cookie.
The value of the cookie.
The domain of the cookie.
The path of the cookie.
The expiration date of the cookie.
if the cookie is secure; otherwise
if the cookie is an HTTP-only cookie; otherwise
If the name is or an empty string,
or if it contains a semi-colon.
If the value or currentUrl is .
Gets a value indicating whether the cookie is secure.
Gets a value indicating whether the cookie is an HTTP-only cookie.
Creates and returns a string representation of the current cookie.
A string representation of the current cookie.
Provides entry points into needed unmanaged APIs.
Values for flags for setting information about a native operating system handle.
No flags are to be set for the handle.
If this flag is set, a child process created with the bInheritHandles
parameter of CreateProcess set to TRUE will inherit the object handle.
If this flag is set, calling the CloseHandle function will not close the
object handle.
Sets the handle information for a Windows object.
Handle to the object.
The handle information to set.
The flags for the handle.
if the information is set; otherwise .
The exception that is thrown when the users attempts to set a cookie with an invalid domain.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when a reference to an element is no longer valid.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when an element is not visible.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
Defines an interface allowing the user to set options on the browser.
Gets an object allowing the user to manipulate cookies on the page.
Gets an object allowing the user to manipulate the currently-focused browser window.
"Currently-focused" is defined as the browser window having the window handle
returned when IWebDriver.CurrentWindowHandle is called.
Gets an object allowing the user to examing the logs for this driver instance.
Provides access to the timeouts defined for this driver.
An object implementing the interface.
Represents rotation of the browser view for orientation-sensitive devices.
When using this with a real device, the device should not be moved so that
the built-in sensors do not interfere.
Gets or sets the screen orientation of the browser on the device.
Defines the interface used to search for elements.
Finds the first using the given method.
The locating mechanism to use.
The first matching on the current context.
If no element matches the criteria.
Finds all IWebElements within the current context
using the given mechanism.
The locating mechanism to use.
A of all WebElements
matching the current criteria, or an empty list if nothing matches.
Defines the interface used to take screen shot images of the screen.
Gets a object representing the image of the page on the screen.
A object containing the image.
Defines the interface through which the user can locate a given frame or window.
Select a frame by its (zero-based) index.
The zero-based index of the frame to select.
An instance focused on the specified frame.
If the frame cannot be found.
Select a frame by its name or ID.
The name of the frame to select.
An instance focused on the specified frame.
If the frame cannot be found.
Select a frame using its previously located
The frame element to switch to.
An instance focused on the specified frame.
If the element is neither a FRAME nor an IFRAME element.
If the element is no longer valid.
Select the parent frame of the currently selected frame.
An instance focused on the specified frame.
Switches the focus of future commands for this driver to the window with the given name.
The name of the window to select.
An instance focused on the given window.
If the window cannot be found.
Selects either the first frame on the page or the main document when a page contains iFrames.
An instance focused on the default frame.
Switches to the element that currently has the focus, or the body element
if no element with focus can be detected.
An instance representing the element
with the focus, or the body element if no element with focus can be detected.
Switches to the currently active modal dialog for this particular driver instance.
A handle to the dialog.
Defines the interface through which the user can define timeouts.
Gets or sets the implicit wait timeout, which is the amount of time the
driver should wait when searching for an element if it is not immediately
present.
When searching for a single element, the driver should poll the page
until the element has been found, or this timeout expires before throwing
a . When searching for multiple elements,
the driver should poll the page until at least one element has been found
or this timeout has expired.
Increasing the implicit wait timeout should be used judiciously as it
will have an adverse effect on test run time, especially when used with
slower location strategies like XPath.
Gets or sets the asynchronous script timeout, which is the amount
of time the driver should wait when executing JavaScript asynchronously.
This timeout only affects the
method.
Gets or sets the page load timeout, which is the amount of time the driver
should wait for a page to load when setting the
property.
Interface representing basic touch screen operations.
Allows the execution of single tap on the screen, analogous to click using a Mouse.
The object representing the location on the screen,
usually an .
Allows the execution of the gesture 'down' on the screen. It is typically the first of a
sequence of touch gestures.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Allows the execution of the gesture 'up' on the screen. It is typically the last of a
sequence of touch gestures.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Allows the execution of the gesture 'move' on the screen.
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Creates a scroll gesture that starts on a particular screen location.
The object representing the location on the screen
where the scroll starts, usually an .
The x coordinate relative to the view port.
The y coordinate relative to the view port.
Creates a scroll gesture for a particular x and y offset.
The horizontal offset relative to the view port.
The vertical offset relative to the view port.
Allows the execution of double tap on the screen, analogous to click using a Mouse.
The object representing the location on the screen,
usually an .
Allows the execution of a long press gesture on the screen.
The object representing the location on the screen,
usually an .
Creates a flick gesture for the current view.
The horizontal speed in pixels per second.
The vertical speed in pixels per second.
Creates a flick gesture for the current view starting at a specific location.
The object representing the location on the screen
where the scroll starts, usually an .
The x offset relative to the viewport.
The y offset relative to the viewport.
The speed in pixels per second.
Defines the interface through which the user controls the browser.
The interface is the main interface to use for testing, which
represents an idealized web browser. The methods in this class fall into three categories:
- Control of the browser itself
- Selection of IWebElements
- Debugging aids
Key properties and methods are , which is used to
load a new web page by setting the property, and the various methods similar
to , which is used to find IWebElements.
You use the interface by instantiate drivers that implement of this interface.
You should write your tests against this interface so that you may "swap in" a
more fully featured browser when there is a requirement for one.
Gets or sets the URL the browser is currently displaying.
Setting the property will load a new web page in the current browser window.
This is done using an HTTP GET operation, and the method will block until the
load is complete. This will follow redirects issued either by the server or
as a meta-redirect from within the returned HTML. Should a meta-redirect "rest"
for any duration of time, it is best to wait until this timeout is over, since
should the underlying page change while your test is executing the results of
future calls against this interface will be against the freshly loaded page.
Gets the title of the current browser window.
Gets the source of the page last loaded by the browser.
If the page has been modified after loading (for example, by JavaScript)
there is no guarantee that the returned text is that of the modified page.
Please consult the documentation of the particular driver being used to
determine whether the returned text reflects the current state of the page
or the text last sent by the web server. The page source returned is a
representation of the underlying DOM: do not expect it to be formatted
or escaped in the same way as the response sent from the web server.
Gets the current window handle, which is an opaque handle to this
window that uniquely identifies it within this driver instance.
Gets the window handles of open browser windows.
Close the current window, quitting the browser if it is the last window currently open.
Quits this driver, closing every associated window.
Instructs the driver to change its settings.
An object allowing the user to change
the settings of the driver.
Instructs the driver to navigate the browser to another location.
An object allowing the user to access
the browser's history and to navigate to a given URL.
Instructs the driver to send future commands to a different frame or window.
An object which can be used to select
a frame or window.
Defines the interface through which the user controls elements on the page.
The interface represents an HTML element.
Generally, all interesting operations to do with interacting with a page will
be performed through this interface.
Gets the tag name of this element.
The property returns the tag name of the
element, not the value of the name attribute. For example, it will return
"input" for an element specified by the HTML markup <input name="foo" />.
Thrown when the target element is no longer valid in the document DOM.
Gets the innerText of this element, without any leading or trailing whitespace,
and with other whitespace collapsed.
Thrown when the target element is no longer valid in the document DOM.
Gets a value indicating whether or not this element is enabled.
The property will generally
return for everything except explicitly disabled input elements.
Thrown when the target element is no longer valid in the document DOM.
Gets a value indicating whether or not this element is selected.
This operation only applies to input elements such as checkboxes,
options in a select element and radio buttons.
Thrown when the target element is no longer valid in the document DOM.
Gets a object containing the coordinates of the upper-left corner
of this element relative to the upper-left corner of the page.
Thrown when the target element is no longer valid in the document DOM.
Gets a object containing the height and width of this element.
Thrown when the target element is no longer valid in the document DOM.
Gets a value indicating whether or not this element is displayed.
The property avoids the problem
of having to parse an element's "style" attribute to determine
visibility of an element.
Thrown when the target element is no longer valid in the document DOM.
Clears the content of this element.
If this element is a text entry element, the
method will clear the value. It has no effect on other elements. Text entry elements
are defined as elements with INPUT or TEXTAREA tags.
Thrown when the target element is no longer valid in the document DOM.
Simulates typing text into the element.
The text to type into the element.
The text to be typed may include special characters like arrow keys,
backspaces, function keys, and so on. Valid special keys are defined in
.
Thrown when the target element is not enabled.
Thrown when the target element is not visible.
Thrown when the target element is no longer valid in the document DOM.
Submits this element to the web server.
If this current element is a form, or an element within a form,
then this will be submitted to the web server. If this causes the current
page to change, then this method will block until the new page is loaded.
Thrown when the target element is no longer valid in the document DOM.
Clicks this element.
Click this element. If the click causes a new page to load, the
method will attempt to block until the page has loaded. After calling the
method, you should discard all references to this
element unless you know that the element and the page will still be present.
Otherwise, any further operations performed on this element will have an undefined.
behavior.
If this element is not clickable, then this operation is ignored. This allows you to
simulate a users to accidentally missing the target when clicking.
Thrown when the target element is not visible.
Thrown when the target element is no longer valid in the document DOM.
Gets the value of the specified attribute for this element.
The name of the attribute.
The attribute's current value. Returns a if the
value is not set.
The method will return the current value
of the attribute, even if the value has been modified after the page has been
loaded. Note that the value of the following attributes will be returned even if
there is no explicit attribute on the element:
Attribute name
Value returned if not explicitly specified
Valid element types
-
checked
checked
Check Box
-
selected
selected
Options in Select elements
-
disabled
disabled
Input and other UI elements
Thrown when the target element is no longer valid in the document DOM.
Gets the value of a JavaScript property of this element.
The name JavaScript the JavaScript property to get the value of.
The JavaScript property's current value. Returns a if the
value is not set or the property does not exist.
Thrown when the target element is no longer valid in the document DOM.
Gets the value of a CSS property of this element.
The name of the CSS property to get the value of.
The value of the specified CSS property.
The value returned by the
method is likely to be unpredictable in a cross-browser environment.
Color values should be returned as hex strings. For example, a
"background-color" property set as "green" in the HTML source, will
return "#008000" for its value.
Thrown when the target element is no longer valid in the document DOM.
Provides methods for getting and setting the size and position of the browser window.
Gets or sets the position of the browser window relative to the upper-left corner of the screen.
When setting this property, it should act as the JavaScript window.moveTo() method.
Gets or sets the size of the outer browser window, including title bars and window borders.
When setting this property, it should act as the JavaScript window.resizeTo() method.
Maximizes the current window if it is not already maximized.
Minimizes the current window if it is not already maximized.
Sets the current window to full screen if it is not already in that state.
Representations of keys able to be pressed that are not text keys for sending to the browser.
Represents the NUL keystroke.
Represents the Cancel keystroke.
Represents the Help keystroke.
Represents the Backspace key.
Represents the Tab key.
Represents the Clear keystroke.
Represents the Return key.
Represents the Enter key.
Represents the Shift key.
Represents the Shift key.
Represents the Control key.
Represents the Control key.
Represents the Alt key.
Represents the Alt key.
Represents the Pause key.
Represents the Escape key.
Represents the Spacebar key.
Represents the Page Up key.
Represents the Page Down key.
Represents the End key.
Represents the Home key.
Represents the left arrow key.
Represents the left arrow key.
Represents the up arrow key.
Represents the up arrow key.
Represents the right arrow key.
Represents the right arrow key.
Represents the Left arrow key.
Represents the Left arrow key.
Represents the Insert key.
Represents the Delete key.
Represents the semi-colon key.
Represents the equal sign key.
Represents the number pad 0 key.
Represents the number pad 1 key.
Represents the number pad 2 key.
Represents the number pad 3 key.
Represents the number pad 4 key.
Represents the number pad 5 key.
Represents the number pad 6 key.
Represents the number pad 7 key.
Represents the number pad 8 key.
Represents the number pad 9 key.
Represents the number pad multiplication key.
Represents the number pad addition key.
Represents the number pad thousands separator key.
Represents the number pad subtraction key.
Represents the number pad decimal separator key.
Represents the number pad division key.
Represents the function key F1.
Represents the function key F2.
Represents the function key F3.
Represents the function key F4.
Represents the function key F5.
Represents the function key F6.
Represents the function key F7.
Represents the function key F8.
Represents the function key F9.
Represents the function key F10.
Represents the function key F11.
Represents the function key F12.
Represents the function key META.
Represents the function key COMMAND.
Gets the description of a specific key.
The key value for which to get the description.
The description of the key.
Represents an entry in a log from a driver instance.
Initializes a new instance of the class.
Gets the timestamp value of the log entry.
Gets the logging level of the log entry.
Gets the message of the log entry.
Returns a string that represents the current .
A string that represents the current .
Creates a from a dictionary as deserialized from JSON.
The from
which to create the .
A with the values in the dictionary.
Represents the levels of logging available to driver instances.
Show all log messages.
Show messages with information useful for debugging.
Show informational messages.
Show messages corresponding to non-critical issues.
Show messages corresponding to critical issues.
Show no log messages.
Class containing names of common log types.
Log messages from the client language bindings.
Logs from the current WebDriver instance.
Logs from the browser.
Logs from the server.
Profiling logs.
The exception that is thrown when an alert is not found.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when an element is not found.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when a frame is not found.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when a window is not found.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when an item is not found.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
Provides a mechanism to write tests against Opera
[TestFixture]
public class Testing
{
private IWebDriver driver;
[SetUp]
public void SetUp()
{
driver = new OperaDriver();
}
[Test]
public void TestGoogle()
{
driver.Navigate().GoToUrl("http://www.google.co.uk");
/*
* Rest of the test
*/
}
[TearDown]
public void TearDown()
{
driver.Quit();
}
}
Accept untrusted SSL Certificates
Initializes a new instance of the class.
Initializes a new instance of the class using the specified options.
The to be used with the Opera driver.
Initializes a new instance of the class using the specified path
to the directory containing OperaDriver.exe.
The full path to the directory containing OperaDriver.exe.
Initializes a new instance of the class using the specified path
to the directory containing OperaDriver.exe and options.
The full path to the directory containing OperaDriver.exe.
The to be used with the Opera driver.
Initializes a new instance of the class using the specified path
to the directory containing OperaDriver.exe, options, and command timeout.
The full path to the directory containing OperaDriver.exe.
The to be used with the Opera driver.
The maximum amount of time to wait for each command.
Initializes a new instance of the class using the specified
and options.
The to use.
The used to initialize the driver.
Initializes a new instance of the class using the specified .
The to use.
The to be used with the Opera driver.
The maximum amount of time to wait for each command.
Gets or sets the responsible for detecting
sequences of keystrokes representing file paths and names.
The Opera driver does not allow a file detector to be set,
as the server component of the Opera driver (OperaDriver.exe) only
allows uploads from the local computer environment. Attempting to set
this property has no effect, but does not throw an exception. If you
are attempting to run the Opera driver remotely, use
in conjunction with a standalone WebDriver server.
Exposes the service provided by the native OperaDriver executable.
Initializes a new instance of the class.
The full path to the OperaDriver executable.
The file name of the OperaDriver executable.
The port on which the OperaDriver executable should listen.
Gets or sets the location of the log file written to by the OperaDriver executable.
Gets or sets the base URL path prefix for commands (e.g., "wd/url").
Gets or sets the address of a server to contact for reserving a port.
Gets or sets the port on which the Android Debug Bridge is listening for commands.
Gets or sets a value indicating whether to enable verbose logging for the OperaDriver executable.
Defaults to .
Gets the command-line arguments for the driver service.
Creates a default instance of the OperaDriverService.
A OperaDriverService that implements default settings.
Creates a default instance of the OperaDriverService using a specified path to the OperaDriver executable.
The directory containing the OperaDriver executable.
A OperaDriverService using a random port.
Creates a default instance of the OperaDriverService using a specified path to the OperaDriver executable with the given name.
The directory containing the OperaDriver executable.
The name of the OperaDriver executable file.
A OperaDriverService using a random port.
Class to manage options specific to
Used with OperaDriver.exe for Chromium v0.1.0 and higher.
OperaOptions options = new OperaOptions();
options.AddExtensions("\path\to\extension.crx");
options.BinaryLocation = "\path\to\opera";
For use with OperaDriver:
OperaDriver driver = new OperaDriver(options);
For use with RemoteWebDriver:
RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
Gets the name of the capability used to store Opera options in
a object.
Gets or sets the location of the Opera browser's binary executable file.
Gets or sets a value indicating whether Opera should be left running after the
OperaDriver instance is exited. Defaults to .
Gets the list of arguments appended to the Opera command line as a string array.
Gets the list of extensions to be installed as an array of base64-encoded strings.
Gets or sets the address of a Opera debugger server to connect to.
Should be of the form "{hostname|IP address}:port".
Gets or sets the directory in which to store minidump files.
Adds a single argument to the list of arguments to be appended to the Opera.exe command line.
The argument to add.
Adds arguments to be appended to the Opera.exe command line.
An array of arguments to add.
Adds arguments to be appended to the Opera.exe command line.
An object of arguments to add.
Adds a single argument to be excluded from the list of arguments passed by default
to the Opera.exe command line by operadriver.exe.
The argument to exclude.
Adds arguments to be excluded from the list of arguments passed by default
to the Opera.exe command line by operadriver.exe.
An array of arguments to exclude.
Adds arguments to be excluded from the list of arguments passed by default
to the Opera.exe command line by operadriver.exe.
An object of arguments to exclude.
Adds a path to a packed Opera extension (.crx file) to the list of extensions
to be installed in the instance of Opera.
The full path to the extension to add.
Adds a list of paths to packed Opera extensions (.crx files) to be installed
in the instance of Opera.
An array of full paths to the extensions to add.
Adds a list of paths to packed Opera extensions (.crx files) to be installed
in the instance of Opera.
An of full paths to the extensions to add.
Adds a base64-encoded string representing a Opera extension to the list of extensions
to be installed in the instance of Opera.
A base64-encoded string representing the extension to add.
Adds a list of base64-encoded strings representing Opera extensions to the list of extensions
to be installed in the instance of Opera.
An array of base64-encoded strings representing the extensions to add.
Adds a list of base64-encoded strings representing Opera extensions to be installed
in the instance of Opera.
An of base64-encoded strings
representing the extensions to add.
Adds a preference for the user-specific profile or "user data directory."
If the specified preference already exists, it will be overwritten.
The name of the preference to set.
The value of the preference to set.
Adds a preference for the local state file in the user's data directory for Opera.
If the specified preference already exists, it will be overwritten.
The name of the preference to set.
The value of the preference to set.
Provides a means to add additional capabilities not yet added as type safe options
for the Opera driver.
The name of the capability to add.
The value of the capability to add.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling
where has already been added will overwrite the
existing value with the new value in .
Also, by default, calling this method adds capabilities to the options object passed to
operadriver.exe.
Provides a means to add additional capabilities not yet added as type safe options
for the Opera driver.
The name of the capability to add.
The value of the capability to add.
Indicates whether the capability is to be set as a global
capability for the driver instead of a Opera-specific option.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling
where has already been added will overwrite the
existing value with the new value in
Returns DesiredCapabilities for Opera with these options included as
capabilities. This does not copy the options. Further changes will be
reflected in the returned capabilities.
The DesiredCapabilities for Opera with these options.
Provides a mechanism to get elements off the page for test
Initializes a new instance of the class
Driver in use
Id of the element
Represents the known and supported Platforms that WebDriver runs on.
The class maps closely to the Operating System,
but differs slightly, because this class is used to extract information such as
program locations and line endings.
Any platform. This value is never returned by a driver, but can be used to find
drivers with certain capabilities.
Any version of Microsoft Windows. This value is never returned by a driver,
but can be used to find drivers with certain capabilities.
Any Windows NT-based version of Microsoft Windows. This value is never returned
by a driver, but can be used to find drivers with certain capabilities. This value
is equivalent to PlatformType.Windows.
Versions of Microsoft Windows that are compatible with Windows XP.
Versions of Microsoft Windows that are compatible with Windows Vista.
Any version of the Macintosh OS
Any version of the Unix operating system.
Any version of the Linux operating system.
A version of the Android mobile operating system.
Represents the platform on which tests are to be run.
Initializes a new instance of the class for a specific platform type.
The platform type.
Gets the current platform.
Gets the major version of the platform operating system.
Gets the major version of the platform operating system.
Gets the type of the platform.
Gets the value of the platform type for transmission using the JSON Wire Protocol.
Compares the platform to the specified type.
A value to compare to.
if the platforms match; otherwise .
Returns the string value for this platform type.
The string value for this platform type.
Creates a object from a string name of the platform.
The name of the platform to create.
The Platform object represented by the string name.
Describes the kind of proxy.
Keep these in sync with the Firefox preferences numbers:
http://kb.mozillazine.org/Network.proxy.type
Direct connection, no proxy (default on Windows).
Manual proxy settings (e.g., for httpProxy).
Proxy automatic configuration from URL.
Use proxy automatic detection.
Use the system values for proxy settings (default on Linux).
No proxy type is specified.
Describes proxy settings to be used with a driver instance.
Initializes a new instance of the class.
Initializes a new instance of the class with the given proxy settings.
A dictionary of settings to use with the proxy.
Gets or sets the type of proxy.
Gets the type of proxy as a string for JSON serialization.
Gets or sets a value indicating whether the proxy uses automatic detection.
Gets or sets the value of the proxy for the FTP protocol.
Gets or sets the value of the proxy for the HTTP protocol.
Gets or sets the value for bypass proxy addresses.
Gets the semicolon delimited list of address for which to bypass the proxy.
Gets or sets the URL used for proxy automatic configuration.
Gets or sets the value of the proxy for the SSL protocol.
Gets or sets the value of the proxy for the SOCKS protocol.
Gets or sets the value of username for the SOCKS proxy.
Gets or sets the value of password for the SOCKS proxy.
Adds a single address to the list of addresses against which the proxy will not be used.
The address to add.
Adds addresses to the list of addresses against which the proxy will not be used.
An array of addresses to add.
Adds addresses to the list of addresses against which the proxy will not be used.
An object of arguments to add.
Returns a dictionary suitable for serializing to the W3C Specification
dialect of the wire protocol.
A dictionary suitable for serializing to the W3C Specification
dialect of the wire protocol.
Returns a dictionary suitable for serializing to the OSS dialect of the
wire protocol.
A dictionary suitable for serializing to the OSS dialect of the
wire protocol.
Base class for managing options specific to a browser driver.
Creates a new instance of the class.
Creates a new instance of the class,
containing the specified to use in the remote
session.
A object that contains values that must be matched
by the remote end to create the remote session.
A list of objects that contain values that may be matched
by the remote end to create the remote session.
Gets a value indicating the options that must be matched by the remote end to create a session.
Gets a value indicating the number of options that may be matched by the remote end to create a session.
Gets the capability value with the specified name.
The name of the capability to get.
The value of the capability.
The specified capability name is not in the set of capabilities.
Add a metadata setting to this set of remote session settings.
The name of the setting to set.
The value of the setting.
The value to be set must be serializable to JSON for transmission
across the wire to the remote end. To be JSON-serializable, the value
must be a string, a numeric value, a boolean value, an object that
implmeents that contains JSON-serializable
objects, or a where the keys
are strings and the values are JSON-serializable.
Thrown if the setting name is null, the empty string, or one of the
reserved names of metadata settings; or if the setting value is not
JSON serializable.
Adds a object to the list of options containing values to be
"first matched" by the remote end.
The to add to the list of "first matched" options.
Adds a object containing values that must be matched
by the remote end to successfully create a session.
The that must be matched by
the remote end to successfully create a session.
Gets a value indicating whether the browser has a given capability.
The capability to get.
Returns if this set of capabilities has the capability;
otherwise, .
Gets a capability of the browser.
The capability to get.
An object associated with the capability, or
if the capability is not set in this set of capabilities.
Return a dictionary representation of this .
A representation of this .
Return a string representation of the remote session settings to be sent.
String representation of the remote session settings to be sent.
Provides a way to access Safari to run your tests by creating a SafariDriver instance
When the WebDriver object has been instantiated the browser will load. The test can then navigate to the URL under test and
start your test.
[TestFixture]
public class Testing
{
private IWebDriver driver;
[SetUp]
public void SetUp()
{
driver = new SafariDriver();
}
[Test]
public void TestGoogle()
{
driver.Navigate().GoToUrl("http://www.google.co.uk");
/*
* Rest of the test
*/
}
[TearDown]
public void TearDown()
{
driver.Quit();
driver.Dispose();
}
}
Initializes a new instance of the class.
Initializes a new instance of the class using the specified .
The to use for this instance.
Initializes a new instance of the class using the specified driver service.
The used to initialize the driver.
Initializes a new instance of the class using the specified path
to the directory containing ChromeDriver.exe.
The full path to the directory containing SafariDriver executable.
Initializes a new instance of the class using the specified path
to the directory containing ChromeDriver.exe and options.
The full path to the directory containing SafariDriver executable.
The to be used with the Safari driver.
Initializes a new instance of the class using the specified path
to the directory containing ChromeDriver.exe, options, and command timeout.
The full path to the directory containing SafariDriver executable.
The to be used with the Safari driver.
The maximum amount of time to wait for each command.
Initializes a new instance of the class using the specified
and options.
The to use.
The used to initialize the driver.
Initializes a new instance of the class using the specified .
The to use.
The to be used with the Safari driver.
The maximum amount of time to wait for each command.
Gets or sets the responsible for detecting
sequences of keystrokes representing file paths and names.
The Safari driver does not allow a file detector to be set,
as the server component of the Safari driver (the Safari extension) only
allows uploads from the local computer environment. Attempting to set
this property has no effect, but does not throw an exception. If you
are attempting to run the Safari driver remotely, use
in conjunction with a standalone WebDriver server.
Exposes the service provided by the native SafariDriver executable.
Initializes a new instance of the class.
The full path to the SafariDriver executable.
The file name of the SafariDriver executable.
The port on which the SafariDriver executable should listen.
Gets or sets a value indicating whether to use the default open-source project
dialect of the protocol instead of the default dialect compliant with the
W3C WebDriver Specification.
This is only valid for versions of the driver for Safari that target Safari 12
or later, and will result in an error if used with prior versions of the driver.
Gets the command-line arguments for the driver service.
Gets a value indicating the time to wait for the service to terminate before forcing it to terminate.
For the Safari driver, there is no time for termination
Gets a value indicating whether the service has a shutdown API that can be called to terminate
it gracefully before forcing a termination.
Gets a value indicating whether the service is responding to HTTP requests.
Creates a default instance of the SafariDriverService.
A SafariDriverService that implements default settings.
Creates a default instance of the SafariDriverService using a specified path to the ChromeDriver executable.
The directory containing the ChromeDriver executable.
A ChromeDriverService using a random port.
Creates a default instance of the SafariDriverService using a specified path to the ChromeDriver executable with the given name.
The directory containing the ChromeDriver executable.
The name of the ChromeDriver executable file.
A ChromeDriverService using a random port.
Class to manage options specific to
SafariOptions options = new SafariOptions();
options.SkipExtensionInstallation = true;
For use with SafariDriver:
SafariDriver driver = new SafariDriver(options);
For use with RemoteWebDriver:
RemoteWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), options.ToCapabilities());
Initializes a new instance of the class.
Gets or sets a value indicating whether to have the driver preload the
Web Inspector and JavaScript debugger in the background.
Gets or sets a value indicating whether to have the driver preload the
Web Inspector and start a timeline recording in the background.
Gets or sets a value indicating whether the browser is the technology preview.
Provides a means to add additional capabilities not yet added as type safe options
for the Safari driver.
The name of the capability to add.
The value of the capability to add.
thrown when attempting to add a capability for which there is already a type safe option, or
when is or the empty string.
Calling where
has already been added will overwrite the existing value with the new value in
Returns ICapabilities for Safari with these options included as
capabilities. This copies the options. Further changes will not be
reflected in the returned capabilities.
The ICapabilities for Safari with these options.
Represents possible screen orientations.
Represents a portrait mode, where the screen is vertical.
Represents Landscape mode, where the screen is horizontal.
File format for saving screenshots.
W3C Portable Network Graphics image format.
Joint Photgraphic Experts Group image format.
Graphics Interchange Format image format.
Tagged Image File Format image format.
Bitmap image format.
Represents an image of the page currently loaded in the browser.
Initializes a new instance of the class.
The image of the page as a Base64-encoded string.
Gets the value of the screenshot image as a Base64-encoded string.
Gets the value of the screenshot image as an array of bytes.
Saves the screenshot to a Portable Network Graphics (PNG) file, overwriting the
file if it already exists.
The full path and file name to save the screenshot to.
Saves the screenshot to a file, overwriting the file if it already exists.
The full path and file name to save the screenshot to.
A value indicating the format
to save the image to.
Returns a String that represents the current Object.
A String that represents the current Object.
The exception that is thrown when a reference to an element is no longer valid.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
An implementation of the interface that may have its timeout and polling interval
configured on the fly.
The type of object on which the wait it to be applied.
Initializes a new instance of the class.
The input value to pass to the evaluated conditions.
Initializes a new instance of the class.
The input value to pass to the evaluated conditions.
The clock to use when measuring the timeout.
Gets or sets how long to wait for the evaluated condition to be true. The default timeout is 500 milliseconds.
Gets or sets how often the condition should be evaluated. The default timeout is 500 milliseconds.
Gets or sets the message to be displayed when time expires.
Configures this instance to ignore specific types of exceptions while waiting for a condition.
Any exceptions not whitelisted will be allowed to propagate, terminating the wait.
The types of exceptions to ignore.
Repeatedly applies this instance's input value to the given function until one of the following
occurs:
- the function returns neither null nor false
- the function throws an exception that is not in the list of ignored exception types
- the timeout expires
The delegate's expected return type.
A delegate taking an object of type T as its parameter, and returning a TResult.
The delegate's return value.
Throws a with the given message.
The message of the exception.
The last exception thrown by the condition.
This method may be overridden to throw an exception that is
idiomatic for a particular test infrastructure.
An interface describing time handling functions for timeouts.
Gets the current date and time values.
Gets the at a specified offset in the future.
The offset to use.
The at the specified offset in the future.
Gets a value indicating whether the current date and time is before the specified date and time.
The date and time values to compare the current date and time values to.
if the current date and time is before the specified date and time; otherwise, .
Interface describing a class designed to wait for a condition.
The type of object used to detect the condition.
Gets or sets how long to wait for the evaluated condition to be true.
Gets or sets how often the condition should be evaluated.
Gets or sets the message to be displayed when time expires.
Configures this instance to ignore specific types of exceptions while waiting for a condition.
Any exceptions not whitelisted will be allowed to propagate, terminating the wait.
The types of exceptions to ignore.
Waits until a condition is true or times out.
The type of result to expect from the condition.
A delegate taking a TSource as its parameter, and returning a TResult.
If TResult is a boolean, the method returns when the condition is true, and otherwise.
If TResult is an object, the method returns the object when the condition evaluates to a value other than .
Thrown when TResult is not boolean or an object type.
Uses the system clock to calculate time for timeouts.
Gets the current date and time values.
Calculates the date and time values after a specific delay.
The delay after to calculate.
The future date and time values.
Gets a value indicating whether the current date and time is before the specified date and time.
The date and time values to compare the current date and time values to.
if the current date and time is before the specified date and time; otherwise, .
Provides the ability to wait for an arbitrary condition during test execution.
IWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(3))
IWebElement element = wait.Until(driver => driver.FindElement(By.Name("q")));
Initializes a new instance of the class.
The WebDriver instance used to wait.
The timeout value indicating how long to wait for the condition.
Initializes a new instance of the class.
An object implementing the interface used to determine when time has passed.
The WebDriver instance used to wait.
The timeout value indicating how long to wait for the condition.
A value indicating how often to check for the condition to be true.
The exception that is thrown when the user is unable to set a cookie.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when an unhandled alert is present.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and alert text.
The message that describes the error.
The text of the unhandled alert.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
Gets the text of the unhandled alert.
Populates a SerializationInfo with the data needed to serialize the target object.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
Represents exceptions that are thrown when an error occurs during actions.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
Specifies return values for actions in the driver.
The action was successful.
The index specified for the action was out of the acceptable range.
No collection was specified.
No string was specified.
No string length was specified.
No string wrapper was specified.
No driver matching the criteria exists.
No element matching the criteria exists.
No frame matching the criteria exists.
The functionality is not supported.
The specified element is no longer valid.
The specified element is not displayed.
The specified element is not enabled.
An unhandled error occurred.
An error occurred, but it was expected.
The specified element is not selected.
No document matching the criteria exists.
An unexpected JavaScript error occurred.
No result is available from the JavaScript execution.
The result from the JavaScript execution is not recognized.
No collection matching the criteria exists.
A timeout occurred.
A null pointer was received.
No window matching the criteria exists.
An illegal attempt was made to set a cookie under a different domain than the current page.
A request to set a cookie's value could not be satisfied.
An alert was found open unexpectedly.
A request was made to switch to an alert, but no alert is currently open.
An asynchronous JavaScript execution timed out.
The coordinates of the element are invalid.
The selector used (CSS/XPath) was invalid.
A session was not created by the driver
The requested move was outside the active view port
The XPath selector was invalid.
An insecure SSl certificate was specified.
The element was not interactable
An invalid argument was passed to the command.
No cookie was found matching the name requested.
The driver was unable to capture the screen.
The click on the element was intercepted by a different element.
Represents exceptions that are thrown when an error occurs during actions.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
The exception that is thrown when an error occurs during an XPath lookup.
Initializes a new instance of the class.
Initializes a new instance of the class with
a specified error message.
The message that describes the error.
Initializes a new instance of the class with
a specified error message and a reference to the inner exception that is the
cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception,
or if no inner exception is specified.
Initializes a new instance of the class with serialized data.
The that holds the serialized
object data about the exception being thrown.
The that contains contextual
information about the source or destination.
Unique class for compression/decompression file. Represents a Zip file.
Compression method enumeration.
Uncompressed storage.
Deflate compression method.
Gets a value indicating whether file names and comments should be encoded using UTF-8.
Gets a value indicating whether to force using the deflate algorithm,
even if doing so inflates the stored file.
Create a new zip storage in a stream.
The stream to use to create the Zip file.
General comment for Zip file.
A valid ZipStorer object.
Open the existing Zip storage in a stream.
Already opened stream with zip contents.
File access mode for stream operations.
A valid ZipStorer object.
Add full contents of a file into the Zip storage.
Compression method used to store the file.
Full path of file to add to Zip storage.
File name and path as desired in Zip directory.
Comment for stored file.
Add full contents of a stream into the Zip storage.
Compression method used to store the stream.
Stream object containing the data to store in Zip.
File name and path as desired in Zip directory.
Modification time of the data to store.
Comment for stored file.
Updates central directory (if needed) and close the Zip storage.
This is a required step, unless automatic dispose is used.
Read all the file records in the central directory.
List of all entries in directory.
Copy the contents of a stored file into a physical file.
Entry information of file to extract.
Name of file to store uncompressed data.
if the file is successfully extracted; otherwise, .
Unique compression methods are Store and Deflate.
Copy the contents of a stored file into an open stream.
Entry information of file to extract.
Stream to store the uncompressed data.
if the file is successfully extracted; otherwise, .
Unique compression methods are Store and Deflate.
Closes the Zip file stream.
Represents an entry in Zip file directory
Compression method
Full path and filename as stored in Zip
Original file size
Compressed file size
Offset of header information inside Zip storage
Offset of file inside Zip storage
Size of header information
32-bit checksum of entire file
Last modification time of file
User comment for file
True if UTF8 encoding for filename and comments, false if default (CP 437)
Overriden method
Filename in Zip