【问题标题】:Selenium - Chrome binary ignoredSelenium - Chrome 二进制文件被忽略
【发布时间】:2017-06-07 06:18:04
【问题描述】:

我更喜欢将旧版 Selenium 2.53.1 与旧版 Chromium 52.0 和 chromedriver 2.24 一起使用。我在 Windows 7 上运行:

start java -jar selenium-server-standalone-2.53.1.jar -Dwebdriver.chrome.driver=C:\dev\selenium\chromedriver.exe -Dwebdriver.chrome.binary=C:\dev\selenium\chrome-win32\chrome.exe -Dwebdriver.chrome.chrome_binary=C:\dev\selenium\chrome-win32\chrome.exe -Dwebdriver.chrome.capabilities.binary=C:\dev\selenium\chrome-win32\chrome.exe -Dwebdriver.chrome.capabilities.chrome_binary=C:\dev\selenium\chrome-win32\chrome.exe -browser browserName="chrome",version=ANY,platform=WINDOWS,maxInstances=1,binary="C:\dev\selenium\chrome-win32\chrome.exe",chrome_binary="C:\dev\selenium\chrome-win32\chrome.exe" -host 0.0.0.0 -port 4444

如您所见,我尝试了很多变体,同时尝试了 binary 和 chrome_binary。但是 Selenium Server 会忽略这些选项并启动默认的 Chrome 浏览器。如何让它运行我指定的二进制文件C:\dev\selenium\chrome-win32\chrome.exe?

09:22:53.149 INFO - Launching a standalone Selenium Server
Setting system property webdriver.chrome.driver to C:\dev\selenium\chromedriver.exe
Setting system property webdriver.chrome.binary to C:\dev\selenium\chrome-win32\chrome.exe
Setting system property webdriver.chrome.chrome_binary to C:\dev\selenium\chrome-win32\chrome.exe
Setting system property webdriver.chrome.capabilities.binary to C:\dev\selenium\chrome-win32\chrome.exe
Setting system property webdriver.chrome.capabilities.chrome_binary to C:\dev\selenium\chrome-win32\chrome.exe
09:22:53.480 INFO - Java: Oracle Corporation 25.65-b01
09:22:53.480 INFO - OS: Windows 7 6.1 amd64
09:22:53.490 INFO - v2.53.1, with Core v2.53.1. Built from revision a36b8b1
09:22:53.569 INFO - Driver class not found: com.opera.core.systems.OperaDriver
09:22:53.569 INFO - Driver provider com.opera.core.systems.OperaDriver is not registered
09:22:53.579 INFO - Driver provider org.openqa.selenium.safari.SafariDriver registration is skipped:
registration capabilities Capabilities [{browserName=safari, version=, platform=MAC}] does not match the current platform VISTA
09:22:53.579 INFO - Driver class not found: org.openqa.selenium.htmlunit.HtmlUnitDriver
09:22:53.579 INFO - Driver provider org.openqa.selenium.htmlunit.HtmlUnitDriver is not registered
09:22:53.928 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
09:22:53.928 INFO - Selenium Server is up and running
09:22:54.331 INFO - Executing: [new session: Capabilities [{acceptSslCerts=false, browserName=chrome, platform=ANY}]])
09:22:54.345 INFO - Creating a new session for Capabilities [{acceptSslCerts=false, browserName=chrome, platform=ANY}]
Starting ChromeDriver 2.24.417431 (9aea000394714d2fbb20850021f6204f2256b9cf) onport 4923
Only local connections are allowed.
09:22:55.137 INFO - Done: [new session: Capabilities [{acceptSslCerts=false, browserName=chrome, platform=ANY}]]

相关(未回答):

How to specify the Chrome binary location via the selenium server standalone command line?

【问题讨论】:

    标签: selenium selenium-chromedriver chromium


    【解决方案1】:

    将您的命令更改为如下所示

    start java  -Dwebdriver.chrome.driver=C:\dev\selenium\chromedriver.exe
    -Dwebdriver.chrome.binary=C:\dev\selenium\chrome-win32\chrome.exe
    -Dwebdriver.chrome.chrome_binary=C:\dev\selenium\chrome-win32\chrome.exe
    -Dwebdriver.chrome.capabilities.binary=C:\dev\selenium\chrome-win32\chrome.exe
    -Dwebdriver.chrome.capabilities.chrome_binary=C:\dev\selenium\chrome-win32\chrome.exe 
    -jar selenium-server-standalone-2.53.1.jar -browser browserName="chrome",version=ANY,platform=WINDOWS,maxInstances=1,binary="C:\dev\selenium\chrome-win32\chrome.exe",chrome_binary="C:\dev\selenium\chrome-win32\chrome.exe" -host 0.0.0.0 -port 4444
    

    然后再试一次?您应该将-D JVM 参数放在-jar 之前。

    有关更多信息,请参阅here。

    【讨论】:

    • 非常感谢。我试过了,但仍然忽略我的选项并运行默认的 Chrome 浏览器。
    • 允许从代码中指定 chrome 二进制文件是愚蠢的。我不需要它。
    • 那么你最好把它作为一个错误来处理 Selenium 代码库。我只是在说出我从代码库中看到的内容。休息由您决定下一步的行动。
    【解决方案2】:

    似乎使用 Selenium Grid 一切正常:

    start java -Dwebdriver.server.session.timeout=900 -jar selenium-server-standalone-2.53.1.jar -role hub -host 0.0.0.0 -port 4444
    start java -Dwebdriver.chrome.driver=C:\dev\selenium\chromedriver.exe -jar selenium-server-standalone-2.53.1.jar -role node -browser browserName="chrome",version=ANY,platform=WINDOWS,maxInstances=1,chrome_binary="C:\dev\selenium\chrome-win32\chrome.exe" -hub http://127.0.0.1:4444/grid/register -port 5555
    

    【讨论】:

      猜你喜欢
      • 2016-09-19
      • 2021-09-09
      • 2012-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多