Javascript Issue with Edge driver when using Selenium 3.5

106 views
Skip to first unread message

Mark Duivesteijn

unread,
Sep 6, 2017, 2:29:45 PM9/6/17
to Selenium Users
Hi all,

I'm having some issues with Javascript , only on the Edge webdriver, but the error seems a bit odd to me:

The error I get is
irb(main):018:0> browser.wait(:like => [:div, :class, 'menuexpander']).fire_event("click")
Selenium::WebDriver::Error::UnsupportedOperationError: underlying webdriver instance does not support javascript
   
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver/remote/oss/bridge.rb:569:in `assert_javascript_enabled'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver/remote/oss/bridge.rb:267:in `
execute_script'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.5.1/lib/selenium/webdriver/common/driver.rb:213:in `execute_script'

   
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/watir-6.7.1/lib/watir/atoms.rb:18:in `execute_atom'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/watir-6.7.1/lib/watir/elements/element.rb:352:in `
block in fire_event'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/watir-6.7.1/lib/watir/elements/element.rb:745:in `element_call'

   
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/watir-6.7.1/lib/watir/elements/element.rb:352:in `fire_event'
    from (irb):18
    from C:/Ruby23/bin/irb.cmd:19:in `<main>'
irb(main):019:0>



Failing scenario (Chrome and FF work fine it's only Edge):
  • Selenium-Standalone-Server version 3.5.0 (or 3.5.3)
  • Ruby gem selenium-webdriver version 3.5.1
  • Ruby gem lapis_lazuli 2.0.0 
  • I tried to start the node in two ways. the first one is the one that did work for 3.4.0 (see below
    • java -Dwebdriver.edge.driver="C:\TA\DRIVERS\MicrosoftWebDriver-15.15063.exe" -jar sss3.5.0.jar -role node -hub http://localhost:4444/grid/register -browser browserName=MicrosoftEdge
    • But I also tried it with a config file like:
    • java "-Dwebdriver.edge.driver=C:/TA/DRIVERS/MicrosoftWebDriver-15.15063.exe" -jar sss3.5.0.jar -role node -hub http://localhost:4444/grid/register -nodeConfig edgenodeconfig.json
      • {
        "capabilities": [
        {
        "browserName": "MicrosoftEdge",
        "platform": "WIN10",
        "javascriptEnabled": true,
        "seleniumProtocol": "WebDriver",
        "maxInstances": 1
        ],
        "port": 5555,
        "maxSession": 1
        }

Working scenario:
  • Selenium-Standalone-Server (hub and node) version 3.4.0
  • Ruby gem selenium-webdriver version 3.4.0
  • Ruby gem lapis_lazuli version 1.1.0
  • The node I start like:
    • java -Dwebdriver.edge.driver="C:\TA\DRIVERS\MicrosoftWebDriver-15.15063.exe" -jar sss3.4.0.jar -role node -hub http://localhost:4444/grid/register -browser browserName=MicrosoftEdge
  • with this setup my test passes
Main Question:
Is this a selenium-standalone-server issue, or is this a Edge webdriver issue?
edge javascript issue.jpg
grid-console.PNG

Mark Duivesteijn

unread,
Sep 7, 2017, 3:35:59 AM9/7/17
to Selenium Users
My ex-collegue noticed I was performing a Watir action, so I also asked this question to the Watir team, see this post:
https://groups.google.com/forum/#!topic/watir-general/KRehp-T0V-8
The answer I got from Titus Fortner was: 
That's a selenium bug. 
Edge uses a weird combination of oss and w3c protocols, and my approach to accommodating it has some flaws. 
Can you raise an issue on selenium github? & Tag me. 
I've been avoiding looking at that code for too long.
So here is the link to the ticket:
https://github.com/SeleniumHQ/selenium/issues/4651

Op woensdag 6 september 2017 20:29:45 UTC+2 schreef Mark Duivesteijn:
Reply all
Reply to author
Forward
0 new messages