【问题标题】:java.lang.IllegalStateException: The driver executable does not exist: /var/lib/jenkins/jobs/Pipeline/workspace/target/test-classes/chromedriverjava.lang.IllegalStateException:驱动程序可执行文件不存在:/var/lib/jenkins/jobs/Pipeline/workspace/target/test-classes/chromedriver
【发布时间】:2018-11-20 08:57:31
【问题描述】:

对于我的项目,我正在运行由 jenkins 中的测试人员编写的 selenium 脚本。我已经下载了适用于 linux 的 chrome 驱动程序,下面是我遇到的错误

java.lang.IllegalStateException: The driver executable does not exist: /var/lib/jenkins/jobs/Pipeline/workspace/target/test-classes/chromedriver

我已经下载了 redhat 的 chrome,如下所示

 cd /var/lib/jenkins/jobs/Pipeline/workspace/target/test-classes
wget -N http://chromedriver.storage.googleapis.com/2.10/chromedriver_linux64.zip 
unzip /chromedriver_linux64.zip .

通过解压,我得到了没有扩展名的 chromedriver。我在配置文件中给出了 chrome 驱动程序路径,如下所示

  //Global Path
    public String globalPath = System.getProperty("user.dir");
    public String chromeDriverPath = globalPath + "//target//test-classes//chromedriver";

谁能告诉我是chromedriver安装有问题还是什么?

Hi Micheal 下面是输出

    sh-4.2$ ls -l /var/lib/jenkins/jobs/Pipeline/workspace/target/test-classes
total 66950
-rwxrwxrwx.  1 default 2002  5778064 May  1  2014 chromedriver
-rw-r--r--.  1 default 2002  6465536 Nov 20 08:27 chromedriver.exe
-rw-r--r--.  1 default 2002    19912 Nov 20 08:27 ExcelData.xlsx
-rw-r--r--.  1 default 2002     9559 Nov 20 08:27 ExportExcel_old.xlsx
-rw-r--r--.  1 default 2002     9324 Nov 20 08:27 ExportExcel.xlsx
-rw-r--r--.  1 default 2002 56131454 Nov 16 05:41 google-chrome-stable_current_x86_64.rpm
-rw-r--r--.  1 default 2002    26055 Nov 20 08:27 InfraSetup_Sanity_Suite.class
drwxr-sr-x.  2 default 2002     4096 Nov 20 08:27 Libraries
-rw-r--r--.  1 default 2002    13214 Nov 20 08:27 NamingConvention.xlsx
drwxr-sr-x.  2 default 2002     4096 Nov 20 08:27 Navigations
-rw-r--r--.  1 default 2002    12415 Nov 20 08:27 OpenShift_Services_QA.class
drwxr-sr-x. 16 default 2002     4096 Nov 20 08:27 Pages
-rw-r--r--.  1 default 2002     9943 Nov 20 08:27 RouteTables_Routes.xlsx
-rw-r--r--.  1 default 2002    11220 Nov 20 08:27 RouteTables_SubnetAssociations.xlsx
-rw-r--r--.  1 default 2002     4837 Nov 20 08:27 SecurityCheckList.class
-rw-r--r--.  1 default 2002    15858 Nov 20 08:27 SecurityGroup_IB.xlsx
-rw-r--r--.  1 default 2002    16265 Nov 20 08:27 SecurityGroup_OB.xlsx
-rw-r--r--.  1 default 2002    13445 Nov 20 08:27 Security_Groups.xlsx
drwxr-sr-x.  2 default 2002     4096 Nov 20 08:27 Test
-rw-r--r--.  1 default 2002      274 Nov 20 08:27 testng.xml

irt 包含适用于 windows 环境的 chrome.exe 和我为 linux 环境下载并解压缩的 chromedriver。

【问题讨论】:

  • 能否在试运行后添加ls -l /var/lib/jenkins/jobs/Pipeline/workspace/target/test-classes的输出?
  • 错误提示系统没有找到 chrome 驱动程序。只需确保给定路径包含 chrome 驱动程序。 /var/lib/jenkins/jobs/Pipeline/workspace/target/test-classes/chromedriver 这个路径下放chrome驱动文件即可。
  • 应该是public String chromeDriverPath = globalPath + "/target/test-classes/chromedriver";
  • 我认为您还需要更新 Jenkins 实例中的 Path 变量。

标签: selenium jenkins selenium-webdriver selenium-chromedriver jenkins-pipeline


【解决方案1】:

此错误消息...

java.lang.IllegalStateException: The driver executable does not exist: /var/lib/jenkins/jobs/Pipeline/workspace/target/test-classes/chromedriver

...暗示 WebDriver 可执行文件不存在于预期位置。

您的主要问题是您使用的二进制文件版本之间的不兼容性,如下所示:

  • 根据行:

    wget -N http://chromedriver.storage.googleapis.com/2.10/chromedriver_linux64.zip
    
  • 您正在使用 chromedriver=2.10

  • chromedriver=2.10 的发行说明明确提及以下内容:

支持 Chrome v33-36

  • 假设您的 Chrome 浏览器 已更新到最新版本的 chrome=70.0。
  • ChromeDriver v2.44 的发行说明明确提及以下内容:

支持支持 Chrome v69-71

所以 ChromeDriver v2.10Chrome 浏览器 v70.0

之间存在明显的不匹配

解决方案

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-05
    • 1970-01-01
    • 1970-01-01
    • 2019-01-07
    • 2014-06-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多