Source code for webdriver_test_tools.testcase.chrome

from .webdriver import *
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities


[docs]class ChromeTestCase(WebDriverTestCase): """Implementation of :class:`WebDriverTestCase <webdriver_test_tools.testcase.webdriver.WebDriverTestCase>` using Chrome webdriver `Driver download <https://sites.google.com/a/chromium.org/chromedriver/downloads>`__ This driver supports headless browsing: `Headless browser info <https://developers.google.com/web/updates/2017/04/headless-chrome>`__ """ DRIVER_NAME = 'Chrome' SHORT_NAME = DRIVER_NAME.lower() CAPABILITIES = DesiredCapabilities.CHROME.copy()
[docs] def driver_init(self): return self.WebDriverConfig.get_chrome_driver(self.ENABLE_HEADLESS)
# Mobile browser emulation
[docs]class ChromeMobileTestCase(WebDriverMobileTestCase): """Implementation of :class:`WebDriverTestCase <webdriver_test_tools.testcase.webdriver.WebDriverTestCase>` using Chrome webdriver. Emulates mobile device layout. `Driver download <https://sites.google.com/a/chromium.org/chromedriver/downloads>`__ `Mobile emulation info <https://sites.google.com/a/chromium.org/chromedriver/mobile-emulation>`__ """ DRIVER_NAME = 'Chrome Mobile [Emulated]' SHORT_NAME = 'chrome-mobile' CAPABILITIES = DesiredCapabilities.CHROME.copy()
[docs] def bs_driver_init(self): """Configures ``CAPABILITIES['chromeOptions']`` for mobile emulation before calling :meth:`super().bs_driver_init() <webdriver_test_tools.testcase.webdriver.WebDriverTestCase.bs_driver_init>` :return: webdriver.Remote object with the command_executor and desired_capabilities parameters set to ``self.COMMAND_EXECUTOR`` and ``self.CAPABILITIES`` respectively. """ # Set options for mobile emulation self.CAPABILITIES['chromeOptions'] = { 'mobileEmulation': self.WebDriverConfig.CHROME_MOBILE_EMULATION, } return super().bs_driver_init()
[docs] def driver_init(self): return self.WebDriverConfig.get_chrome_mobile_driver(self.ENABLE_HEADLESS)