spec: support internet explorer test run
Change-Id: I3aa0228cffa8e767e7ba2c21df351d96fa6f16cc Reviewed-on: https://gerrit.instructure.com/131017 Tested-by: Jenkins Reviewed-by: Robert Lamb <rlamb@instructure.com> Product-Review: Robert Lamb <rlamb@instructure.com> QA-Review: Robert Lamb <rlamb@instructure.com>
This commit is contained in:
parent
817009eea2
commit
7e7aa18c0b
|
@ -175,7 +175,7 @@ module ErrorContext
|
|||
end
|
||||
|
||||
def capture_screenshot?
|
||||
selenium?
|
||||
selenium? && !SeleniumDriverSetup.saucelabs_test_run?
|
||||
end
|
||||
|
||||
def capture_video?
|
||||
|
|
|
@ -189,7 +189,7 @@ shared_context "in-process server selenium tests" do
|
|||
SeleniumDriverSetup.disallow_requests!
|
||||
end
|
||||
|
||||
if SeleniumDriverSetup.reset_driver_between_specs?
|
||||
if SeleniumDriverSetup.saucelabs_test_run?
|
||||
driver.quit
|
||||
SeleniumDriverSetup.reset!
|
||||
end
|
||||
|
|
|
@ -285,7 +285,7 @@ module CustomSeleniumActions
|
|||
#
|
||||
# 3.) This function will likely have trouble clicking links. Use fln instead.
|
||||
def force_click(element_jquery_finder)
|
||||
fj(element_jquery_finder)
|
||||
fj(element_jquery_finder)
|
||||
driver.execute_script(%{$(#{element_jquery_finder.to_s.to_json}).click()})
|
||||
end
|
||||
|
||||
|
@ -351,7 +351,7 @@ module CustomSeleniumActions
|
|||
when :chrome
|
||||
driver.execute_script("arguments[0].select()", el)
|
||||
keys = [:backspace]
|
||||
when :safari
|
||||
when :safari, :internet_explorer
|
||||
el.clear()
|
||||
keys = []
|
||||
end
|
||||
|
|
|
@ -91,7 +91,7 @@ module SeleniumDriverSetup
|
|||
@driver = nil
|
||||
end
|
||||
|
||||
def reset_driver_between_specs?
|
||||
def saucelabs_test_run?
|
||||
SeleniumDriverSetup::CONFIG[:remote_url].present? &&
|
||||
SeleniumDriverSetup::CONFIG[:remote_url].downcase.include?("saucelabs")
|
||||
end
|
||||
|
@ -103,7 +103,7 @@ module SeleniumDriverSetup
|
|||
Thread.new { start_driver }
|
||||
].each(&:join)
|
||||
rescue Selenium::WebDriver::Error::WebDriverError
|
||||
driver.quit if reset_driver_between_specs?
|
||||
driver.quit if saucelabs_test_run?
|
||||
rescue StandardError
|
||||
puts "selenium startup failed: #{$ERROR_INFO}"
|
||||
puts "exiting :'("
|
||||
|
@ -149,7 +149,7 @@ module SeleniumDriverSetup
|
|||
|
||||
@driver = create_driver
|
||||
|
||||
focus_viewport if run_headless? && driver.browser != :safari
|
||||
focus_viewport if run_headless?
|
||||
|
||||
set_timeouts(TIMEOUTS)
|
||||
|
||||
|
@ -219,7 +219,7 @@ module SeleniumDriverSetup
|
|||
end
|
||||
|
||||
def run_headless?
|
||||
ENV.key?("TEST_ENV_NUMBER")
|
||||
ENV.key?("TEST_ENV_NUMBER") && !saucelabs_test_run?
|
||||
end
|
||||
|
||||
HEADLESS_DEFAULTS = {
|
||||
|
|
|
@ -51,8 +51,7 @@ module SpecTimeLimit
|
|||
|
||||
# find an appropriate timeout for this spec
|
||||
def timeout_for(example)
|
||||
# todo: find a better way
|
||||
if ENV.fetch("BROWSER", "") == 'safari'
|
||||
if ENV.fetch("SELENIUM_REMOTE_URL", "undefined remote url").include? "saucelabs"
|
||||
[:status_quo, SAUCELABS_ABSOLUTE_TIMEOUT]
|
||||
elsif (timeout = typical_time_for(example))
|
||||
[:status_quo, [timeout, ABSOLUTE_TIMEOUT].min]
|
||||
|
|
Loading…
Reference in New Issue