git - 无法使用 Jenkins 配置 Selenium
问题描述
我正在使用 centos 7 并在将 selenium 与 Jenkins 集成时面临问题。
我在我的本地机器上正确执行的硒脚本下面写了。
我在端口 8081 上运行了 tomcat,这个脚本正在处理它。
脚本如下 -
public class App
{
@Test
public static void main( String[] args ) throws InterruptedException
{
System.setProperty("webdriver.chrome.driver","/home/amrut/Documents/chromedriver");
ChromeOptions chromeOptions = new ChromeOptions();
// chromeOptions.addArguments("--headless");
WebDriver driver = new ChromeDriver(chromeOptions);
System.out.println("Hi, Welcome to YouTube Live session on Selenium WebDriver");
driver.get("http://localhost:8081/addressbook");
driver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
Thread.sleep(1000);
driver.findElement(By.className("v-button")).click();
Thread.sleep(1000);
driver.findElement(By.id("gwt-uid-5")).sendKeys("temp");
Thread.sleep(1000);
driver.findElement(By.id("gwt-uid-7")).sendKeys("DevOps");
Thread.sleep(1000);
driver.findElement(By.id("gwt-uid-9")).sendKeys("9834562709");
Thread.sleep(1000);
driver.findElement(By.id("gwt-uid-11")).sendKeys("Devops@temp.co");
Thread.sleep(1000);
driver.findElement(By.id("gwt-uid-13")).sendKeys("01/01/2015");
Thread.sleep(1000);
driver.findElement(By.className("v-button-primary")).click();
Thread.sleep(3000);
driver.quit();
System.out.println("Done....");
}
}
现在,如果我通过 Eclipse 在本地运行它,它工作正常。
我已经从中导出了可运行的 jar 文件,并将其上传到了 Git 存储库。在创建 jar 文件时,我的代码中取消了对 headless chromeoptions 行的注释。
此外,这个本地 Jar 文件在我的本地命令行中运行良好。
现在我正在创建 Jenkins 的作业,它将获取这个 GIT 存储库 & 在 Build 部分中我选择了Execute shell并将以下命令传递给它 -
java -jar "/var/lib/jenkins/workspace/Selenium Demo/App1_test.jar"
Caused by: java.lang.IllegalStateException: The driver executable does not exist: /home/amrut/Documents/chromedriver
at com.google.common.base.Preconditions.checkState(Preconditions.java:585)
at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:136)
at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:131)
at org.openqa.selenium.chrome.ChromeDriverService.access$000(ChromeDriverService.java:33)
at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:139)
at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:335)
at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:89)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:157)
at com.amrut.SeleniumDemo.App.main(App.java:26)
... 5 more
Build step 'Execute shell' marked build as failure
Finished: FAILURE
我很确定我的 chromedriver 存在于路径 /home/amrut/Documents/chromedriver 中,但不确定为什么会出现此错误?
请协助。我尝试了很多选项,但仍然无法解决这个问题。
提前致谢。
解决方案
推荐阅读
- scala - 如何在 build.sbt 中获取当前目标目录的路径
- php - 使用 mysqli 和 php (PhpMyAdmin) 检查用户名是否已存在
- python - 防止服务器关闭套接字?
- javascript - Electron:如何以pdf格式打印所有html内容
- python - Pandas .to_sql 函数抛出 ImportError(DLL 加载失败)
- python - 通过并行 Python 执行 Fortran 子程序无法执行
- javascript - Jsf Datatable jQuery 选择的索引返回 Object 作为值
- c# - 查找包含至少一个字符串单词的记录
- laravel - 找不到类“Michielfb\Time”
- angular - 角度依赖注入无法解决库组件