【问题标题】:Selenium chromedriver.exeSelenium chromedriver.exe
【发布时间】:2014-11-11 15:51:38
【问题描述】:

作为我项目设置的一部分,我有两个项目,一个作为库,另一个作为 Selenium。 我在库项目中设置了所有浏览器,其中 /src/main/resource 具有 chromedriver.exe Selenium 项目具有所有的 pagefactory 类,并且该项目依赖于 Library。 但是,当我在 slave 上运行项目时,我收到以下错误消息:

java.lang.IllegalStateException:驱动程序可执行文件不存在:c:\jenkins_slave10\workspace\TEST-Demos\file:\C:\Users\svc-hudson\.m2\repository\com\bskyb\automation\crm\libraries \1.1-SNAPSHOT\libraries-1.1-SNAPSHOT.jar!\chromedriver\windows\chromedriver.exe 在 com.google.common.base.Preconditions.checkState(Preconditions.java:177) 在 org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:117) 在 org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:112) 在 org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:89) 在 org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:149) 在 com.abc.automation.crm.actions.BrowserSetup.openBrowserChrome(BrowserSetup.java:38) 在 com.abc.automation.crm.actions.Search.setup(Search.java:111) 在 com.abc.automation.crm.actions.Search.directorynumber(Search.java:35) 在 com.abc.automation.crm.stepdefs.Demo.i_search_for_directory_number(Demo.java:34)

【问题讨论】:

  • jar 中不能有可执行资源。您必须先将其拔出才能使用。

标签: java maven selenium


【解决方案1】:

您是否尝试设置系统属性以指定chromedriver.exe 位置?

要么用

启动 selenium 服务器
-Dwebdriver.chrome.driver=c:\path\to\your\chromedriver.exe 

在代码中设置系统属性:

System.setProperty("webdriver.chrome.driver", "C:/path/to/your/chromedriver.exe");

【讨论】:

    【解决方案2】:

    你不应该在 jar 上打包 chromedirver。

    尝试在 jenkins 中添加 prebuild 步骤,它将 chromdriver 下载到工作区中的项目文件夹并设置它的相对路径。

    【讨论】:

      【解决方案3】:

      错误是说你指定的路径不正确。

      System.setProperty("webdriver.chrome.driver", "/home/path/Downloads/chromedriver"); // specify complete path. 
      WebDriver webDriver = new ChromeDriver();
      

      chrome 驱动程序可能与操作系统不兼容。你必须检查这个。您可以从http://chromedriver.storage.googleapis.com/index.html?path=2.16/下载驱动程序 并解压 .zip 文件。

      【讨论】:

        【解决方案4】:

        错误是说你指定的路径不正确。

        System.setProperty("webdriver.chrome.driver", "c://jars//imp//IEDriverServer.exe"); // complete path. 
        WebDriver webDriver = new ChromeDriver();
        

        我认为您缺少使用双 '//' 指定路径,如下所示

        c://jars//imp//IEDriverServer.exe
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2018-09-08
          • 2016-06-28
          • 1970-01-01
          • 2023-03-03
          • 2014-02-14
          • 1970-01-01
          • 2019-09-22
          • 2018-08-21
          相关资源
          最近更新 更多