Как прописать путь к драйверу внешний?
Для запуска связки github+jenkins
System.setProperty(“webdriver.chrome.driver”, System.getProperty(“user.dir”)+"/src/test/resources")
Усложняем задачу … jenkins стоит в докере с убунтой, а я работаю на винде )))
пробросить volume в контейнер и в него положить драйверы
- я работаю на windows и соответственно использую chromedriver**.exe**
- в докере убунта и jenkins …
- jenkins забирает репозиторий с github в котором прописан путь до драйвера .exe и пытается его запустить … соответственно у него нечего не получается потому что он на linux…
две недели ридонли кончились, глупые вопросы стартовали
положите вебдрайвер для линукса в контейнер и дайте путь дженкинсу до этого драйвера
а в репозитории получайте из переменных окружения тип операционной системы и в зависимости от результата переопределяйте используемый драйвер
Автор не зря поставил такую аватару. Походу пыхнет чего-то убойного и потом вопросы задаёт
А по факту - прокидывать надо volume где лежит бинарь драйвера линуксовый в контейнер и юзать его.
Положить 2 драйвера, один для винды другой для убунты, в зависимости на какой машине гонятся тесты выбирать какой драйвер запустить, как писали выше. Самое простое решение.
извините, я пропустил: а почему не подошел WebDriverManager?
В общем WebDriverManager наверно хорошая вещь, но я реализовал это так
public WebDriverSettings(){
String chromeDriver;
//System.out.println(osName.equals("Windows 10"));
if (System.getProperty("os.name").equals("Windows 7")) {
chromeDriver = System.getProperty("user.dir")+"/chromedriver/chromedriver.exe";
} else chromeDriver = System.getProperty("user.dir")+"/chromedriver/chromedriver";
System.setProperty("webdriver.chrome.driver", chromeDriver);
this.driver = new ChromeDriver();
}
Затем дал атрибут запуска х через командную строку и в итоге ошибку jenkins выдает …
WebDriver unknown error: cannot find Chrome binary
Ну как бы в виндовсе слеши в другую сторону
И скорее всего нужно конкатенацию пути осуществлять какой то джойновой библиотекой, а не в лоб плюсами
Все нормально отрабатывает со слешами
из System.getProperty(“user.dir”) вот такой путь прилетает в jenkins
/var/jenkins_home/workspace/ …
Похоже в докер хром надо поставить WebDriver unknown error: cannot find Chrome binary
Java умная стала. Слеши для винды в обе стороны работают, по-моему. Но лучше File.separator применять и другие плюшки самой Java
винда уже вроде на половину линукс)