API Documentation¶
Configurator¶
-
class
selenium_configurator.configurator.
Configurator
(config)[source]¶ This Configurator class is the entry point to prepare a selenium web driver list from a configuration string, file or object.
A short example to launch on a local Firefox would be:
from selenium_configurator.configurator import Configurator configurator = Configurator( { 'drivers': [ { 'class': 'selenium_configurator.drivers.local.Firefox', } ], } ) drivers = configuration.get_drivers() for driver in drivers: driver.selenium.get('https://anybox.fr/) driver.quit()
-
classmethod
from_file
(path)[source]¶ Create a Configurator from a
.yaml
or.json
fileParameters: path – to the config file Returns: An instance of Configurator
-
classmethod
Driver¶
-
class
selenium_configurator.driver.
Driver
(conf, global_capabilities=None, name=None)[source]¶ Abstract class to define and ensure to expose uniform public API
We mainly recommand to use get_web_drivers class method to instanciate Drivers. For instance remote webdrivers that use service like selenium Grid will return multiple instance of Driver..
-
classmethod
get_web_drivers
(conf, global_capabilities=None)[source]¶ Class method to prepare Driver(s) instance according current Driver class and given settings.
Parameters: - conf – a dict that contains the Driver configuration
- global_capabilities – Capabilities shared over Drivers configuration
Returns: a list of Driver
-
global_capabilities
= None¶ Capabilities shared between drivers
-
name
¶ Returns: the technical name that describe the related webdriver
-
quit
()[source]¶ Prefer this way to
quit()
a selenium to properly re-open the browser in case it was closed
-
selenium
¶ Get the instance of webdriver, it starts the browser if the webdriver is not yet instantied
Returns: a `selenium instance <http://selenium-python.readthedocs.org/ api.html#module-selenium.webdriver.remote.webdriver>`
-
classmethod
Local¶
Local driver to launch browser on the current computer.
While instantiate a webdriver you can request for different capabilities, to change available behavior of the browser.
-
class
selenium_configurator.drivers.local.
Chrome
(conf, global_capabilities=None, name=None)[source]¶ Local Chrom/Chromium webdriver
Configuration settings:
{ 'class': 'selenium_configurator.drivers.local.Chrome', 'capabilities': { ... } }
-
class
selenium_configurator.drivers.local.
Firefox
(conf, global_capabilities=None, name=None)[source]¶ Local Firefox webdriver
Configuration settings:
{ 'class': 'selenium_configurator.drivers.local.Firefox', 'capabilities': { ... } }
-
class
selenium_configurator.drivers.local.
Ie
(conf, global_capabilities=None, name=None)[source]¶ Local Internet Explorer webdriver
Configuration settings:
{ 'class': 'selenium_configurator.drivers.local.Ie', 'capabilities': { ... } }
-
class
selenium_configurator.drivers.local.
Opera
(conf, global_capabilities=None, name=None)[source]¶ Local Opera webdriver
Configuration settings:
{ 'class': 'selenium_configurator.drivers.local.Opera', 'capabilities': { ... } }
-
class
selenium_configurator.drivers.local.
Phantomjs
(conf, global_capabilities=None, name=None)[source]¶ Local phantomjs webdriver
Configuration settings:
{ 'class': 'selenium_configurator.drivers.local.Phantomjs', 'capabilities': { ... } }
Remote¶
-
class
selenium_configurator.drivers.remote.
Grid
(grid_conf, desired_capabilities, global_capabilities=None, name=None)[source]¶ Grid Driver class to use over browsers over a Selenium Grid
It give you the availybility to request multiple browsers against one Grid server.
Configuration settings to get 1 Chrome and 1 Firefox over a Grid service:
conf = { 'class': 'selenium_configurator.drivers.remote.Grid', 'capabilities': { # Capabilities shared with request browser and overload # general capabilities }, "request_drivers": [ { "browserName": "firefox", "platform": "LINUX", "version": "", # other capabilities }, { "browserName": "chrome", "platform": "LINUX", "version": "", }, ] } from selenium_configurator.driver.remote import Grid driver_list = Grid.get_web_drivers(conf)