SeleniumHQ / selenium

A browser automation framework and ecosystem.
https://selenium.dev
Apache License 2.0
29.73k stars 8.02k forks source link

[🐛 Bug]: Selenium Manager returns wrong browser-path if browser-version and browser-path sent #14154

Closed vlad8x8 closed 1 week ago

vlad8x8 commented 1 week ago

What happened?

0) clean all cached drivers

1) selenium-manager.exe --browser-path "C:\Program Files\WindowsApps\MSTeams_24137.2216.2931.2440_x64__8wekyb3d8bbwe\ms-teams.exe" --browser "MicrosoftEdge" returns ...ERROR] Wrong browser/driver version

2) selenium-manager.exe --browser-path "C:\Program Files\WindowsApps\MSTeams_24137.2216.2931.2440_x64__8wekyb3d8bbwe\ms-teams.exe" --browser "MicrosoftEdge" --browser-version 126 returns path of MSEdge instead of browser-path from parameter ...INFO ] Browser path: C:\Program Files (x86)\Microsoft\Edge\Application\126.0.2592.61\msedge.exe

3) if I run command 1 (without version) again after command 2, then it returns the correct browser path:

... WARN ] There was an error managing msedgedriver (Wrong browser/driver version); using the driver found in the cache
... INFO ] Browser path: C:\Program Files\WindowsApps\MSTeams_24137.2216.2931.2440_x64__8wekyb3d8bbwe\ms-teams.exe

How can we reproduce the issue?

clean all cached drivers
run
selenium-manager.exe --browser-path "C:\Program Files\WindowsApps\MSTeams_24137.2216.2931.2440_x64__8wekyb3d8bbwe\ms-teams.exe" --browser "MicrosoftEdge"

Relevant log output

C:\Users\vvelichko\.cache\selenium\manager\0.4.21>selenium-manager.exe --browser-path "C:\Program Files\WindowsApps\MSTeams_24137.2216.2931.2440_x64__8wekyb3d8bbwe\ms-teams.exe" --browser "MicrosoftEdge"
[2024-06-18T23:11:45.708Z ERROR] Wrong browser/driver version

C:\Users\vvelichko\.cache\selenium\manager\0.4.21>selenium-manager.exe --browser-path "C:\Program Files\WindowsApps\MSTeams_24137.2216.2931.2440_x64__8wekyb3d8bbwe\ms-teams.exe" --browser "MicrosoftEdge" --browser-version 126
[2024-06-18T23:12:02.066Z INFO ] Driver path: C:\Users\vvelichko\.cache\selenium\msedgedriver\win64\126.0.2592.61\msedgedriver.exe
[2024-06-18T23:12:02.069Z INFO ] Browser path: C:\Program Files (x86)\Microsoft\Edge\Application\126.0.2592.61\msedge.exe

C:\Users\vvelichko\.cache\selenium\manager\0.4.21>selenium-manager.exe --browser-path "C:\Program Files\WindowsApps\MSTeams_24137.2216.2931.2440_x64__8wekyb3d8bbwe\ms-teams.exe" --browser "MicrosoftEdge"
[2024-06-18T23:12:05.908Z WARN ] There was an error managing msedgedriver (Wrong browser/driver version); using driver found in the cache
[2024-06-18T23:12:05.912Z INFO ] Driver path: C:\Users\vvelichko\.cache\selenium\msedgedriver\win64\126.0.2592.61\msedgedriver.exe
[2024-06-18T23:12:05.912Z INFO ] Browser path: C:\Program Files\WindowsApps\MSTeams_24137.2216.2931.2440_x64__8wekyb3d8bbwe\ms-teams.exe

Operating System

Windows 10

Selenium version

Java 4.21.0

What are the browser(s) and version(s) where you see this issue?

MS Edge based on Chrome 126

What are the browser driver(s) and version(s) where you see this issue?

msedgedriver 126.0.2592.61

github-actions[bot] commented 1 week ago

@vlad8x8, thank you for creating this issue. We will troubleshoot it as soon as we can.


Info for maintainers

Triage this issue by using labels.

If information is missing, add a helpful comment and then I-issue-template label.

If the issue is a question, add the I-question label.

If the issue is valid but there is no time to troubleshoot it, consider adding the help wanted label.

If the issue requires changes or fixes from an external project (e.g., ChromeDriver, GeckoDriver, MSEdgeDriver, W3C), add the applicable G-* label, and it will provide the correct link and auto-close the issue.

After troubleshooting the issue, please add the R-awaiting answer label.

Thank you!

vlad8x8 commented 1 week ago

found when investigated #14088

titusfortner commented 1 week ago

Can you set logging to level FINE and post the results?

github-actions[bot] commented 1 week ago

We need more information about this issue in order to troubleshoot.

Please turn on logging and re-run your code. Information on how to adjust logs for your language can be found in our Troubleshooting documentation.

vlad8x8 commented 1 week ago

https://gist.github.com/vlad8x8/f27e15733ab06b84be68fca6dbf47b38

titusfortner commented 1 week ago

The reason this isn't working is that you are passing in a path to something that is not microsoft edge.

This should work properly when run from within Selenium. Log what Selenium does and you can see what you should do if you want to run it outside of Selenium.

github-actions[bot] commented 1 week ago

💬 Please ask questions at:

vlad8x8 commented 1 week ago

@titusfortner this is what's happening if it works in java: https://github.com/SeleniumHQ/selenium/issues/14088#issuecomment-2177203277 we are getting wrong version in output and Selenium uses this wrong version further image

titusfortner commented 1 week ago

Set useWebview(true) on options class.

https://learn.microsoft.com/en-us/microsoft-edge/webview2/how-to/webdriver

vlad8x8 commented 1 week ago

Thank you @titusfortner It resolved my issue