当前位置: 首页 > 面试题库 >

远程Webdriver上的Chrome(通过Grid)无法启动

姬成荫
2023-03-14
问题内容

我在使用Grid上的远程WebDriver功能(使用Firefox和Chrome使用1个Linux集线器和1个Linux节点)使用Chrome启动Cucumber测试时遇到问题。Firefox测试非常顺利,但Chrome返回以下错误:

unknown error: Chrome failed to start: exited abnormally
(Driver info: chromedriver=2.2,platform=Linux 3.2.0-23-generic-pae x86) (WARNING: The server did not provide any stacktrace information)
java.util.concurrent.ExecutionException: org.openqa.selenium.WebDriverException:    java.lang.reflect.InvocationTargetException

Command duration or timeout: 20.67 seconds
Build info: version: '2.30.0', revision: 'dc1ef9c', time: '2013-02-19 00:15:27'
System info: os.name: 'Linux', os.arch: 'i386', os.version: '3.2.0-23-generic-pae',      java.version: '1.7.0_25'
Driver info: org.openqa.selenium.chrome.ChromeDriver (org.openqa.selenium.WebDriverException) (Selenium::WebDriver::Error::UnknownError)

浏览器初始化为:

$profile = Selenium::WebDriver::Chrome::Profile.new
$profile['download.prompt_for_download'] = false
$profile['download.default_directory'] = downloads_path

capabilities = Selenium::WebDriver::Remote::Capabilities.chrome(
    platform: "Linux",
    version: "",
    "chrome.profile" => $profile)

browser = Watir::Browser.new(
    :remote,
    :url => 'http://aut.theurl.net:4444/wd/hub',
    :desired_capabilities => capabilities)

更多信息:

  • 我尝试了chromedriver 2.3和2.2版本以及selenium-server-standalone 2.35和2.3版本失败。
  • 通过终端,chromedriver成功启动,因此路径似乎没问题。

Chrome似乎在远程节点上启动,但立即失败。我有点主意,所以欢迎任何想法或指导。

提前致谢!

==================================

更新:添加了更多控制台日志信息。也许这里有更多信息,但是我看不到任何有价值的信息。

11:45:47.612 WARN - Exception thrown
java.util.concurrent.ExecutionException: org.openqa.selenium.WebDriverException:       java.lang.reflect.InvocationTargetException
Build info: version: '2.35.0', revision: 'c916b9d', time: '2013-08-12 15:42:01'
System info: os.name: 'Linux', os.arch: 'i386', os.version: '3.2.0-23-generic-pae',   java.version: '1.7.0_25'
Driver info: driver.version: unknown
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
(...)
Caused by: org.openqa.selenium.WebDriverException:    java.lang.reflect.InvocationTargetException
Build info: version: '2.35.0', revision: 'c916b9d', time: '2013-08-12 15:42:01'
System info: os.name: 'Linux', os.arch: 'i386', os.version: '3.2.0-23-generic-pae',   java.version: '1.7.0_25'
Driver info: driver.version: unknown
at   org.openqa.selenium.remote.server.DefaultDriverFactory.callConstructor(DefaultDriverFactory.java:72)
    at org.openqa.selenium.remote.server.DefaultDriverFactory.newInstance(DefaultDriverFactory.java:56)
    (...)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at      sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
    at org.openqa.selenium.remote.server.DefaultDriverFactory.callConstructor(DefaultDriverFactory.java:62)
    ... 9 more
Caused by: org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start:     exited abnormally
  (Driver info: chromedriver=2.2,platform=Linux 3.2.0-23-generic-pae x86) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 20.53 seconds
Build info: version: '2.35.0', revision: 'c916b9d', time: '2013-08-12 15:42:01'
System info: os.name: 'Linux', os.arch: 'i386', os.version: '3.2.0-23-generic-pae',  java.version: '1.7.0_25'
Driver info: org.openqa.selenium.chrome.ChromeDriver
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at     sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    (...)
11:45:47.612 WARN - Exception: unknown error: Chrome failed to start: exited abnormally
  (Driver info: chromedriver=2.2,platform=Linux 3.2.0-23-generic-pae x86) (WARNING: The   server did not provide any stacktrace information)
Command duration or timeout: 20.53 seconds
Build info: version: '2.35.0', revision: 'c916b9d', time: '2013-08-12 15:42:01'
System info: os.name: 'Linux', os.arch: 'i386', os.version: '3.2.0-23-generic-pae',   java.version: '1.7.0_25'
Driver info: org.openqa.selenium.chrome.ChromeDriver

问题答案:

最后,它起作用了!

我改变了两件事:

  • 使用其他chromedriver(linux64而非linux32)
  • 使用Dwebdriver.chrome.driverswitch 在命令中包含chromedriver路径:
    java -jar ./selenium-server-standalone-2.35.0.jar - Dwebdriver.chrome.driver='/opt/drivers/chromedriver' -role webdriver -hub  http://192.168.1.10:4444/grid/register -port 5566 -browser browserName=chrome,maxInstances=5,platform=LINUX &
    

非常感谢您的参考:)



 类似资料:
  • 我在所有浏览器中都遇到了这个例外。例如,我在chrome上创建了一个远程webdriver,如下所示: 我得到了UnreachableBrowserException如下: 但我在<代码>http://myIP:4444/grid/console,一切正常,节点仍然注册。然后在<代码>http://myIP:5555/wd/hub/static/resource/hub.html,我仍然可以单击“

  • 我使用以下内容注册我的节点(与集线器相同的机器): java-Dwebdriver.chrome。驱动程序= 但是,当我执行测试用例时,只启动了4个浏览器。是否有我遗漏的设置或在不知不觉中使用了一些默认设置?请帮忙。

  • 我正在使用selenium 3.4.0版和chrome 59版。xxx,Chrome驱动程序版本2.30 每次显示错误时- 线程“main”java中出现异常。lang.NoSuchMethodError:com。谷歌。常见的基础前提条件。检查状态(ZLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V

  • 我找不到任何解决这个问题的办法,这就是为什么张贴在这里。对不起,这个愚蠢的问题。 我无法使用selenium网络驱动程序启动任何浏览器。请在下面找到详细信息: 我的电脑中的Chrome版本:55.0.2883.87 m版 Chrome路径:C:\Program Files\Google\Chrome\Application\chrome.exe Chrome驱动程序版本:2.26 使用seleni

  • 我试图通过Selenium打开Chrome webdriver,但在初始化时出错。我收到的错误是: 我一直在寻找不同的解决方案。我尝试手动指定Chrome.exe的路径,我添加了一些片段,如和以及使用单独的user-data-dir。当前代码可以在下面看到 Chrome的版本是71.0。3578.80,Chromedriver为2.45,因此应该兼容。我曾尝试使用较旧的版本,但只得到部分错误:De

  • 问题内容: 我已经下载了IEDriver并测试了32位和64位版本(我正在运行64位Windows 7),并且在环境变量中包括了包含EXE路径的文件夹。 我已经重新启动了Eclipse和整个系统,但是仍然出现异常 以下是我启动IE的测试设置: 我很沮丧 我以前曾经使用过它,但是现在将其删除了,现在想将其放回系统中。我正在使用Python 3.3,Eclipse 4.2.2,Selenium 2.3