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

如何为Chrome构建远程Webdriver

孟子墨
2023-03-14
问题内容

我正在尝试针对Chrome运行Selenium测试。当我在本地初始化驱动程序时:

@driver = Selenium::WebDriver.for( :chrome )

一切正常(我已经将Chrome二进制文件放在PATH上),但是当我尝试远程启动它时:

@driver = Selenium::WebDriver.for(:remote, :url => 'http://' + SELENIUM_HOST + port + webdriver_hub, :desired_capabilities => :chrome)

我收到以下错误

Selenium :: WebDriver :: Error ::
UnhandledError:chromedriver可执行文件的路径必须由webdriver.chrome.driver系统属性设置;有关更多信息,请参见
http://code.google.com/p/selenium/wiki/ChromeDriver。可以从http://code.google.com/p/chromium/downloads/list(java.lang.IllegalStateException
)下载最新版本。

我在那里有点困惑-我应该如何准确地设置此系统属性?我发现此代码是用Java编写的:

DesiredCapabilities caps = DesiredCapabilities.chrome();
caps.setJavascriptEnabled(true);
caps.setCapability("chrome.binary", "/path/to/where/chrome/is/installed/chrome.exe");
System.setProperty("webdriver.chrome.driver","/path/to/where/you/ve/put/chromedriver.exe");
ChromeDriver driver = new ChromeDriver(caps);

但是我的测试是用Ruby编写的。RubyBindings不会谈论这个问题
http://code.google.com/p/selenium/wiki/RubyBindings


问题答案:

实际上,错误消息是略有错误。你不 具备 设置系统属性,但chromedriver可执行需要在远程机器上(服务器正在运行)的路径可用。

如果要将路径指定为属性,则可以在启动服务器时执行此操作,例如:

java -Dwebdriver.chrome.driver=/path/to/driver -jar selenium-server-standalone.jar


 类似资料:
  • 是否有一种方法可以禁用远程资源检索(也许有利于本地资源),最好是通过向Maven传递命令行参数,但如果不能,则通过修改Maven根POM的本地副本? 编辑:添加完整堆栈跟踪。似乎方法是使用来自Velocity的反射调用的,这使我认为一定有一个Velocity模板在某个Apache工件中引用,但是我在https://svn.Apache.org/repos/asf/maven/resources/的

  • 问题内容: 我正在使用以下方法远程调用Jenkins作业: 这里job被调用,并且是我使用的安全令牌。 现在,我需要将一些参数传递给此作业的build.xml文件,即。 我还没有弄清楚如何传递变量。 问题答案: 请参阅Jenkins文档: 参数化构建 以下是您感兴趣的行:

  • 我正试图使用Selenium Grid启动一款新的Chrome浏览器,但最终出现以下错误 无法创建新的远程会话。所需功能=能力[{浏览器名称=chrome,版本=55.0.2,平台=WINDOWS}],所需功能=能力[{}]构建信息:版本:“3.0.1”,修订版本:“1969d75”,时间:“2016-10-18 09:49:13 -0700”系统信息:主机:“PL9710388”,ip:“10.

  • 这是如何配置Git后提交挂钩的扩展或变体 我的问题是,我不希望每次提交一次构建。相反,我想要的是一次触发一个构建的单个实例。当单个实例正在运行时,新的请求可能会累积,但在当前构建完成后,应该将它们合并到单个新构建中。 显然,触发应该在有意义的相关git版本上,通常来自同一个分支,并且构建应该始终在最靠近HEAD的触发版本上执行(这有意义吗?)。 因此,为了解决这个问题,假设每个人都在努力掌握,我放

  • 问题内容: 我通常在Linux系统上工作,但遇到一种情况,我需要编写一个客户端应用程序,该应用程序可以作为服务在Windows上运行。有人可以帮助我或指导我如何在Windows环境下构建MenuBar应用程序(例如Dropbox),该应用程序从操作系统启动开始,图标位于TaskBar中,然后单击该应用程序图标将显示一个菜单。 我的脚本语言是python。谢谢。 问题答案: 您可以使用pywin32

  • 本文向大家介绍jenkins 远程构建Android的过程详解,包括了jenkins 远程构建Android的过程详解的使用技巧和注意事项,需要的朋友参考一下 由于企业的需求,需要做一个网站开分享每个版本的Android的app,所以需要使用的工具如下:   Jenkins平台,远程编译环境服务器一台,web服务器一台,根据自己的选择,可以搭配自己的资源,废话少说,直奔主题   1. Jenkin