"ChromeDriver is not executable" 运行 GitLab 管道时出错
"ChromeDriver is not executable" error when run GitLab pipeline
我才开始使用 GitLab 作为 CI 工具。
我已经使用堆栈创建了自动测试:Java、Cucumber、Maven。
我已经使用下一个设置创建了 gitlab-ci.yml:
image: maven:latest
stages:
- test
test:
stage: test
script:
- mvn clean test -Dtest=RunCucumberTest
但是管道失败并出现下一个错误:
java.lang.IllegalStateException: The driver is not executable: /builds/<user>/cucumber-testing/./src/drivers/chromedriver_99.exe
at com.google.common.base.Preconditions.checkState(Preconditions.java:585)
at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:150)
at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:141)
at org.openqa.selenium.chrome.ChromeDriverService.access[=13=]0(ChromeDriverService.java:35)
at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:159)
at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:355)
at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:94)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:123)
at seleniumActions.ActionWithElement.setUp(ActionWithElement.java:24)
at stepDefinition.Hooks.setUp(Hooks.java:14)
如何在我的 .yml 文件中为 gitlab 设置 ChromeDriver?
GitLab docker 作业在 Linux docker 容器中执行。您的可执行文件(.exe
文件)是 win32 二进制文件,不能用于 Linux 容器中的作业 运行。
下载 linux chromedriver 并改为指定该文件。
我才开始使用 GitLab 作为 CI 工具。 我已经使用堆栈创建了自动测试:Java、Cucumber、Maven。 我已经使用下一个设置创建了 gitlab-ci.yml:
image: maven:latest
stages:
- test
test:
stage: test
script:
- mvn clean test -Dtest=RunCucumberTest
但是管道失败并出现下一个错误:
java.lang.IllegalStateException: The driver is not executable: /builds/<user>/cucumber-testing/./src/drivers/chromedriver_99.exe
at com.google.common.base.Preconditions.checkState(Preconditions.java:585)
at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:150)
at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:141)
at org.openqa.selenium.chrome.ChromeDriverService.access[=13=]0(ChromeDriverService.java:35)
at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:159)
at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:355)
at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:94)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:123)
at seleniumActions.ActionWithElement.setUp(ActionWithElement.java:24)
at stepDefinition.Hooks.setUp(Hooks.java:14)
如何在我的 .yml 文件中为 gitlab 设置 ChromeDriver?
GitLab docker 作业在 Linux docker 容器中执行。您的可执行文件(.exe
文件)是 win32 二进制文件,不能用于 Linux 容器中的作业 运行。
下载 linux chromedriver 并改为指定该文件。