Module: TestCentricity::WebDriverConnect
- Includes:
- Capybara::DSL
- Defined in:
- lib/testcentricity_web/webdriver_helper.rb
Class Method Summary collapse
- .initialize_web_driver(app_host = nil) ⇒ Object
- .set_domain(url) ⇒ Object
-
.set_webdriver_path(project_path) ⇒ Object
Set the WebDriver path for Chrome, IE, or Edge browsers.
Class Method Details
.initialize_web_driver(app_host = nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/testcentricity_web/webdriver_helper.rb', line 9 def self.initialize_web_driver(app_host = nil) .app_host = app_host unless app_host.nil? browser = ENV['WEB_BROWSER'] # assume that we're testing within a local desktop web browser Environ.set_platform(:desktop) Environ.set_browser(browser) Environ.set_device(false) Environ.set_device_type('browser') case browser.downcase.to_sym when :appium initialize_appium context = 'mobile device emulator' when :browserstack initialize_browserstack context = 'Browserstack cloud service' when :crossbrowser initialize_crossbrowser context = 'CrossBrowserTesting cloud service' when :poltergeist initialize_poltergeist context = 'PhantomJS' when :saucelabs initialize_saucelabs context = 'Sauce Labs cloud service' when :testingbot initialize_testingbot context = 'TestingBot cloud service' else if ENV['SELENIUM'] == 'remote' initialize_remote context = 'Selenium Grid2' else initialize_local_browser context = 'local instance' end end # set browser window size only if testing with a desktop web browser unless Environ.is_device? || .current_driver == :poltergeist initialize_browser_size end puts "Using #{Environ.browser.to_s} browser via #{context}" end |
.set_domain(url) ⇒ Object
56 57 58 |
# File 'lib/testcentricity_web/webdriver_helper.rb', line 56 def self.set_domain(url) .app_host = url end |
.set_webdriver_path(project_path) ⇒ Object
Set the WebDriver path for Chrome, IE, or Edge browsers
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/testcentricity_web/webdriver_helper.rb', line 61 def self.set_webdriver_path(project_path) path_to_driver = nil case ENV['WEB_BROWSER'].downcase.to_sym when :chrome if OS.osx? path_to_driver = 'features/support/drivers/mac/chromedriver' elsif OS.windows? path_to_driver = 'features/support/drivers/windows/chromedriver.exe' end Selenium::WebDriver::Chrome.driver_path = File.join(project_path, path_to_driver) when :ie path_to_driver = 'features/support/drivers/windows/IEDriverServer.exe' Selenium::WebDriver::IE.driver_path = File.join(project_path, path_to_driver) when :edge path_to_driver = 'features/support/drivers/windows/MicrosoftWebDriver.exe' Selenium::WebDriver::Edge.driver_path = File.join(project_path, path_to_driver) end puts "The webdriver path is: #{path_to_driver}" unless path_to_driver.nil? end |