The list of driver creational methods of AtataContextBuilder:

public ChromeAtataContextBuilder

UseChrome()

Use the ChromeDriver.

public FirefoxAtataContextBuilder

UseFirefox()

Use the FirefoxDriver.

public InternetExplorerAtataContextBuilder

UseInternetExplorer()

Use the InternetExplorerDriver.

public EdgeAtataContextBuilder

UseEdge()

Use the EdgeDriver.

public SafariAtataContextBuilder

UseSafari()

Use the SafariDriver.

public OperaAtataContextBuilder

UseOpera()

Use the OperaDriver.

public PhantomJSAtataContextBuilder

UsePhantomJS()

Use the PhantomJSDriver.

public RemoteDriverAtataContextBuilder

UseRemoteDriver()

Use the RemoteWebDriver.

public CustomDriverAtataContextBuilder

UseDriver(Func<RemoteWebDriver> driverFactory)

Use custom driver factory method.

public TDriverFactory

UseDriver<TDriverFactory>(TDriverFactory driverFactory)

Use the driver factory.

public AtataContextBuilder

UseDriver(string alias)

Sets the alias of the driver to use.

Driver Configuration

It is possible to configure the driver using the following methods:

public {DriverAtataContextBuilder}

WithArguments(params string[] arguments)

Adds arguments to be appended to the Chrome.exe/Opera.exe command line.

public {DriverAtataContextBuilder}

WithAlias(string alias)

Specifies the driver alias.

public {DriverAtataContextBuilder}

WithOptions(Func<{DriverOptions}> optionsCreator)

Specifies the driver options factory method.

public {DriverAtataContextBuilder}

WithOptions(Action<{DriverOptions}> optionsInitializer)

Specifies the driver options initialization method.

public {DriverAtataContextBuilder}

WithOptions(Dictionary<string, object> optionsPropertiesMap)

Specifies the properties map for the driver options.

public {DriverAtataContextBuilder}

WithCapability(string capabilityName, object capabilityValue)

Adds additional capability to the driver options.

public {DriverAtataContextBuilder}

WithDriverService(Func<{DriverService}> driverServiceCreator)

Specifies the driver service factory method.

public {DriverAtataContextBuilder}

WithDriverService(Action<{DriverService}> serviceInitializer)

Specifies the driver service initialization method.

public {DriverAtataContextBuilder}

WithDriverService(Dictionary<string, object> servicePropertiesMap)

Specifies the properties map for the driver service.

public {DriverAtataContextBuilder}

WithDriverPath(string driverPath)

Specifies the directory containing the driver executable file.

public {DriverAtataContextBuilder}

WithLocalDriverPath()

Specifies that local/current directory should be used as the directory containing the driver executable file. Uses AppDomain.CurrentDomain.BaseDirectory as driver folder path. This configuration options makes sense for .NET Core 2.0 project that uses driver as a project package (hosted in the same build directory).

public {DriverAtataContextBuilder}

WithDriverExecutableFileName(string driverExecutableFileName)

Specifies the name of the driver executable file.

public {DriverAtataContextBuilder}

WithCommandTimeout(TimeSpan commandTimeout)

Specifies the command timeout (the maximum amount of time to wait for each command).

public {DriverAtataContextBuilder}

WithFixOfCommandExecutionDelay()

Specifies that the fix of driver’s HTTP command execution delay should be applied. There is a bug in Selenium.WebDriver v3.6.0 for .NET Core 2.0: each WebDriver request takes extra 1 second. Link to the bug: https://github.com/dotnet/corefx/issues/24104. The fix does: finds HttpCommandExecutor instance of RemoteWebDriver instance and updates its remoteServerUri field by replacing “locahost” with “127.0.0.1”.

Usage

AtataContext.Configure().
    UseChrome().
        WithArguments("disable-extensions", "no-sandbox", "start-maximized").
    Build();