watir / watir.github.io

Code for our Website
http://watir.github.io/
MIT License
11 stars 66 forks source link

Watir support for Edge browser #70

Closed ambikashri closed 7 years ago

ambikashri commented 7 years ago

I am trying to run my script in Edge browser using watir and selenium grid 2.53.1 . On running the grid console shows that the edge browser has got allocated, but it doesnt run any of the test.

It throws the below error

"[\"[remote server] sun.reflect.NativeConstructorAccessorImpl():-2:in newInstance0'\", \"[remote server] sun.reflect.NativeConstructorAccessorImpl():-1:innewInstance'\", \"[remote server] sun.reflect.DelegatingConstructorAccessorImpl():-1:in newInstance'\", \"[remote server] java.lang.reflect.Constructor():-1:innewInstance'\", \"[remote server] org.openqa.selenium.remote.ErrorHandler(ErrorHandler.java):206:in createThrowable'\", \"[remote server] org.openqa.selenium.remote.ErrorHandler(ErrorHandler.java):158:inthrowIfResponseFailed'\", \"[remote server] org.openqa.selenium.remote.RemoteWebDriver(RemoteWebDriver.java):678:in execute'\", \"[remote server] org.openqa.selenium.remote.RemoteWebDriver(RemoteWebDriver.java):249:instartSession'\", \"[remote server] org.openqa.selenium.remote.RemoteWebDriver(RemoteWebDriver.java):131:in <init>'\", \"[remote server] org.openqa.selenium.remote.RemoteWebDriver(RemoteWebDriver.java):144:in'\", \"[remote server] org.openqa.selenium.edge.EdgeDriver(EdgeDriver.java):152:in <init>'\", \"[remote server] org.openqa.selenium.edge.EdgeDriver(EdgeDriver.java):120:in'\", \"[remote server] sun.reflect.NativeConstructorAccessorImpl():-2:in newInstance0'\", \"[remote server] sun.reflect.NativeConstructorAccessorImpl():-1:innewInstance'\", \"[remote server] sun.reflect.DelegatingConstructorAccessorImpl():-1:in newInstance'\", \"[remote server] java.lang.reflect.Constructor():-1:innewInstance'\", \"[remote server] org.openqa.selenium.remote.server.DefaultDriverProvider(DefaultDriverProvider.java):103:in callConstructor'\", \"[remote server] org.openqa.selenium.remote.server.DefaultDriverProvider(DefaultDriverProvider.java):97:innewInstance'\", \"[remote server] org.openqa.selenium.remote.server.DefaultDriverFactory(DefaultDriverFactory.java):60:in newInstance'\", \"[remote server] org.openqa.selenium.remote.server.DefaultSession$BrowserCreator(DefaultSession.java):222:incall'\", \"[remote server] org.openqa.selenium.remote.server.DefaultSession$BrowserCreator(DefaultSession.java):1:in call'\", \"[remote server] java.util.concurrent.FutureTask():-1:inrun'\", \"[remote server] org.openqa.selenium.remote.server.DefaultSession$1(DefaultSession.java):176:in run'\", \"[remote server] java.util.concurrent.ThreadPoolExecutor():-1:inrunWorker'\", \"[remote server] java.util.concurrent.ThreadPoolExecutor$Worker():-1:in run'\", \"[remote server] java.lang.Thread():-1:inrun'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/remote/response.rb:70:in assert_ok'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/remote/response.rb:34:ininitialize'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/remote/http/common.rb:78:in new'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/remote/http/common.rb:78:increate_response'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/remote/http/default.rb:90:in request'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/remote/http/common.rb:59:incall'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/remote/bridge.rb:649:in raw_execute'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/remote/bridge.rb:123:increate_session'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/remote/bridge.rb:87:in initialize'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/driver.rb:59:innew'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver/common/driver.rb:59:in for'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-2.53.1/lib/selenium/webdriver.rb:84:infor'\", \"C:/Ruby23/lib/ruby/gems/2.3.0/gems/watir-webdriver-0.9.3/lib/watir-webdriver/browser.rb:46:in initialize'\", \"C:/Users/xyz/codes/ruby/lib/ci_utilities.rb:246:innew'\", \"C:/Users/xyz/codes/ruby/lib/ci_utilities.rb:246:in block in assign_browser'\", \"C:/Users/xyz/codes/ruby/lib/ci_utilities.rb:243:ineach'\", \"C:/Users/xyz/codes/ruby/lib/ci_utilities.rb:243:in assign_browser'\", \"C:/Users/xyz/codes/ruby/vdeck/registration/hosting_registration.rb:90:in

'\"]" "Unknown error (WARNING: The server did not provide any stacktrace information)\nCommand duration or timeout: 7.06 seconds\nBuild info: version: '2.53.1', revision: 'a36b8b1', time: '2016-06-30 17:37:03'\nSystem info: host: 'CPU1157', ip: '10.0.1.14', os.name: 'Windows 8.1', os.arch: 'amd64', os.version: '6.3', java.version: '1.8.0_31'\nDriver info: org.openqa.selenium.edge.EdgeDriver (org.openqa.selenium.WebDriverException)"

Currently I haven't mentioned any browser capabilities.

if opts['browser_selection'] =~ /edge/i
      p 'edge'
      browser_capabilities[:browserName] = 'MicrosoftEdge'
end

browser = Watir::Browser.new(:remote,
                   :url => "http://#{hub}:4444/wd/hub",
                  :desired_capabilities => browser_capabilities )`

Selenium hub and node are configured as below

REM Settings as a hub start java -jar selenium-server-standalone-2.53.1.jar -role hub -port 4444 -DPOOL_MAX=512

REM Setting as a node start java -Dwebdriver.chrome.driver=C:\seleniumgrid\chromedriver.exe -Dwebdriver.edge.driver=C:\seleniumgrid\MicrosoftWebDriver.exe -Dwebdriver.ie.driver=C:\seleniumgrid\IEDriverServer.exe -jar selenium-server-standalone-2.53.1.jar -role node -port 5556 -hub http://localhost:4444/grid/register -browser browserName=MicrosoftEdge,platform=WINDOWS,maxInstances=2 -browserTimeout 500 -browser browserName="internet explorer",version=11,maxInstances=2,platform=WINDOWS -browser browserName=chrome,maxInstances=2,platform=WINDOWS -browser browserName=firefox,maxInstances=2,platform=WINDOWS -log C:\seleniumgrid\node1.log `

Are there any specific capabilties which needs to be mentioned while running Edge browser with watir?

thekiiingbob commented 7 years ago

Hey there! Thanks for reaching out, but this repo is for code and issues involving the watir.github.io website. If you are looking for support with Watir itself, I'd make an issue on the main github page for the project here - https://github.com/watir/watir/issues.

ambikashri commented 7 years ago

Thank you. Moved it to watir github. https://github.com/watir/watir/issues/480