mozilla / geckodriver

WebDriver for Firefox
https://firefox-source-docs.mozilla.org/testing/geckodriver/
Mozilla Public License 2.0
7.03k stars 1.51k forks source link

Shadow DOM element is not accessible #2107

Closed beliaev-maksim closed 1 year ago

beliaev-maksim commented 1 year ago

System

Testcase

Hard to provide a good minimal. I use shadow doms on a complicated framework. Basically, try to extract class"menu-item" image

Stacktrace

E       selenium.common.exceptions.WebDriverException: Message: WebDriver:FindElementsFromShadowRoot
E       Stacktrace:
E       RemoteError@chrome://remote/content/shared/RemoteError.sys.mjs:8:8
E       WebDriverError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:182:5
E       UnknownCommandError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:519:5
E       despatch@chrome://remote/content/marionette/server.sys.mjs:295:13
E       execute@chrome://remote/content/marionette/server.sys.mjs:275:16
E       onPacket/<@chrome://remote/content/marionette/server.sys.mjs:248:20
E       onPacket@chrome://remote/content/marionette/server.sys.mjs:249:9
E       _onJSONObjectReady/<@chrome://remote/content/marionette/transport.sys.mjs:496:20

../../venv/lib/python3.10/site-packages/selenium/webdriver/remote/errorhandler.py:245: WebDriverException

Trace-level log


1682109255883   geckodriver INFO    Listening on 127.0.0.1:49547
1682109256493   mozrunner::runner   INFO    Running command: MOZ_CRASHREPORTER="1" MOZ_CRASHREPORTER_NO_REPORT="1" MOZ_CRASHREPORTER_SHUTDOWN="1" MOZ_NO_REMOTE="1" "/sna ... e-debugging-port" "42287" "--remote-allow-hosts" "localhost" "-no-remote" "-profile" "/home/maksim/tmp/rust_mozprofilegggqGT"
1682109256493   geckodriver::marionette DEBUG   Waiting 60s to connect to browser on 127.0.0.1
1682109256493   geckodriver::browser    TRACE   Failed to open /home/maksim/tmp/rust_mozprofilegggqGT/MarionetteActivePort
1682109256493   geckodriver::marionette TRACE   Retrying in 100ms
1682109256593   geckodriver::browser    TRACE   Failed to open /home/maksim/tmp/rust_mozprofilegggqGT/MarionetteActivePort
1682109256593   geckodriver::marionette TRACE   Retrying in 100ms
1682109256693   geckodriver::browser    TRACE   Failed to open /home/maksim/tmp/rust_mozprofilegggqGT/MarionetteActivePort
1682109256693   geckodriver::marionette TRACE   Retrying in 100ms
1682109256794   geckodriver::browser    TRACE   Failed to open /home/maksim/tmp/rust_mozprofilegggqGT/MarionetteActivePort
1682109256794   geckodriver::marionette TRACE   Retrying in 100ms
1682109256894   geckodriver::browser    TRACE   Failed to open /home/maksim/tmp/rust_mozprofilegggqGT/MarionetteActivePort
1682109256894   geckodriver::marionette TRACE   Retrying in 100ms
1682109256994   geckodriver::browser    TRACE   Failed to open /home/maksim/tmp/rust_mozprofilegggqGT/MarionetteActivePort
1682109256994   geckodriver::marionette TRACE   Retrying in 100ms
Read port: 44143
1682109257111   geckodriver::marionette DEBUG   Connection to Marionette established on 127.0.0.1:44143.
1682109257941   webdriver::server   DEBUG   <- 200 OK {"value":{"sessionId":"d58efca3-604a-4b2b-8f26-6f6749bd3e7a","capabilities":{"acceptInsecureCerts":true,"browserNam ... ctability":false,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000},"unhandledPromptBehavior":"dismiss and notify"}}}
1682109257942   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/window/rect {"x": null, "y": null, "width": 1920, "height": 1080}
1682109257991   webdriver::server   DEBUG   <- 200 OK {"value":{"x":131,"y":87,"width":1920,"height":1080}}
1682109257992   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/window/maximize {}
1682109258272   webdriver::server   DEBUG   <- 200 OK {"value":{"x":74,"y":27,"width":1846,"height":1253}}
1682109258273   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/timeouts {"implicit": 10000}
1682109258281   webdriver::server   DEBUG   <- 200 OK {"value":null}
1682109258282   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/url {"url": "http://10.64.140.43.nip.io"}
1682109258391   webdriver::server   DEBUG   <- 200 OK {"value":null}
1682109258392   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/element {"using": "css selector", "value": "[id=\"login\"]"}
1682109258419   webdriver::server   DEBUG   <- 200 OK {"value":{"element-6066-11e4-a52e-4f735466cecf":"123fda2c-f5bd-4c70-8a82-9ae2bb04e066"}}
1682109258420   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/element/123fda2c-f5bd-4c70-8a82-9ae2bb04e066/value {"text": "admin", "value": ["a", "d", "m", "i", "n"], "id": "123fda2c-f5bd-4c70-8a82-9ae2bb04e066"}
1682109258429   webdriver::server   DEBUG   <- 200 OK {"value":null}
1682109258429   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/element {"using": "css selector", "value": "[id=\"password\"]"}
1682109258430   webdriver::server   DEBUG   <- 200 OK {"value":{"element-6066-11e4-a52e-4f735466cecf":"60a75a58-2650-4dcb-a98c-fbf971e45ffb"}}
1682109258431   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/element/60a75a58-2650-4dcb-a98c-fbf971e45ffb/value {"text": "admin", "value": ["a", "d", "m", "i", "n"], "id": "60a75a58-2650-4dcb-a98c-fbf971e45ffb"}
1682109258434   webdriver::server   DEBUG   <- 200 OK {"value":null}
1682109258435   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/element {"using": "css selector", "value": "[id=\"submit-login\"]"}
1682109258436   webdriver::server   DEBUG   <- 200 OK {"value":{"element-6066-11e4-a52e-4f735466cecf":"a48bf4ce-e38c-4032-b0a4-1d2a426a9180"}}
1682109258436   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/element/a48bf4ce-e38c-4032-b0a4-1d2a426a9180/click {"id": "a48bf4ce-e38c-4032-b0a4-1d2a426a9180"}
1682109259112   webdriver::server   DEBUG   <- 200 OK {"value":null}
1682109259113   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/element {"using": "xpath", "value": "/html/body/main-page"}
1682109259114   webdriver::server   DEBUG   <- 200 OK {"value":{"element-6066-11e4-a52e-4f735466cecf":"97fae89a-c783-49de-9371-f51fb119e98a"}}
1682109259115   webdriver::server   DEBUG   -> GET /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/element/97fae89a-c783-49de-9371-f51fb119e98a/shadow 
1682109259116   webdriver::server   DEBUG   <- 200 OK {"value":{"shadow-6066-11e4-a52e-4f735466cecf":"fee6087b-12b6-4f6a-9205-ccb55b38fcaa"}}
1682109259117   webdriver::server   DEBUG   -> POST /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/shadow/fee6087b-12b6-4f6a-9205-ccb55b38fcaa/elements {"using": "css selector", "value": ".menu-item", "shadowId": "fee6087b-12b6-4f6a-9205-ccb55b38fcaa"}
1682109259117   webdriver::server   DEBUG   <- 404 Not Found {"value":{"error":"unknown error","message":"WebDriver:FindElementsFromShadowRoot","stacktrace":"RemoteError ... ontent/marionette/server.sys.mjs:249:9\n_onJSONObjectReady/<@chrome://remote/content/marionette/transport.sys.mjs:496:20\n"}}
1682109260206   webdriver::server   DEBUG   -> GET /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a/screenshot 
1682109260347   webdriver::server   DEBUG   <- 200 OK {"value":"iVBORw0KGgoAAAANSUhEUgAADmwAAAkgCAYAAAAwEvMPAAAgAElEQVR4XuzdB5SV1bkG4E+MBdRYIIpiNBGN5dow0dhAjZFiA3vDCKjRB ... aFqTwIECBAgsB4BgU1XhAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBQLoH/A/qYJNEWaA09AAAAAElFTkSuQmCC"}
1682109260351   webdriver::server   DEBUG   -> DELETE /session/d58efca3-604a-4b2b-8f26-6f6749bd3e7a 
1682109260387   webdriver::server   DEBUG   Teardown session
1682109262589   geckodriver::browser    DEBUG   Browser process stopped: exit status: 0
1682109262593   webdriver::server   DEBUG   <- 200 OK {"value":null}
beliaev-maksim commented 1 year ago

I see

the minimum required Firefox version is 113.0.

and driver 0.33