Я использую Centos 7 и сталкиваюсь с проблемой при интеграции селена с Jenkins.
Я написал ниже сценарий селена, который на моем локальном компьютере выполняется правильно.
У меня естьtomcat работает на порте 8081, и этот скрипт работает на нем.
Сценарий ниже -
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 раскомментировал строку безголовых chromeoptions из моего кода.
Кроме того, этот локальный Jar-файл работает нормально из моей локальной командной строки.
Теперь я создаю задание Jenkin, которое будет извлекать это GIT-репозиторий и в выбранном мной разделе Build. Выполнить оболочку и передал ей следующую команду -
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
Я почти уверен, что мой хроматический драйвер существует в пути / home / amrut / Documents / chromedriver, но не уверен, почемуя получаю эту ошибку?
Пожалуйста, помогите.Я пытался с большим количеством вариантов, но все еще не смог это исправить.
Заранее спасибо.