Как запустить тестовые примеры Selenium WebDriver в Chrome?
Я пробовал это
WebDriver driver = new ChromeDriver();
Но я получаю ошибку как
Неудачные тесты: setUp (com.TEST): путь к исполняемому файлу драйвера должен быть задан системным свойством webdriver.chrome.driver; Для получения дополнительной информации см. код здесь. Последнюю версию можно скачать по ссылке
Как я могу сделать Chrome для тестирования тестовых случаев Selenium-WebDriver?
Ответы
Ответ 1
Вам необходимо скачать исполняемый драйвер с: ChromeDriver Download
Затем все, что вам нужно сделать, это использовать следующее перед созданием объекта драйвера (уже показан в правильном порядке):
System.setProperty("webdriver.chrome.driver", "/path/to/chromedriver");
WebDriver driver = new ChromeDriver();
Это было извлечено из наиболее полезного руководства из документации ChromeDriver.
Ответ 2
Загрузите обновленную версию драйвера chrome из Chrome Driver. Прочтите также примечание к выпуску здесь. Если браузер chrome обновлен, вам необходимо загрузить новый chormedriver по вышеуказанной ссылке, поскольку он будет компактным с новой версией браузера.
public class chrome
{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "/path/to/chromedriver");
WebDriver driver = new ChromeDriver();
driver.get("http://www.google.com");
}
}
Ответ 3
Вы должны загрузить chromeDriver в папку и добавить эту папку в свою переменную PATH.
Вам нужно будет перезапустить консоль, чтобы она работала.
Ответ 4
Если вы используете homebrew на MacOS, вы можете использовать команду:
(РЕДАКТИРОВАТЬ): brew tap homebrew/cask && brew cask install chromedriver
После этого все должно работать без каких-либо других настроек.
Ответ 5
Вам необходимо установить Chrome драйвер. Вы можете установить этот пакет, используя самородок, как показано ниже
![]()
Ответ 6
Найти последнюю версию chromedriver
здесь.
После загрузки разархивируйте его в корневой папке установки python, например C:/Program Files/Python-3.5
, и запустите его.
Вам даже не нужно указывать путь в любом месте и/или добавлять chromedriver
к вашему пути или тому подобному.
Я просто сделал это на чистой установке Python и это работает.
Ответ 7
Вы можете использовать приведенный ниже код для запуска тестовых примеров в Chrome с помощью веб-драйвера Selenium:
import java.io.IOException;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class ChromeTest {
/**
* @param args
* @throws InterruptedException
* @throws IOException
*/
public static void main(String[] args) throws InterruptedException, IOException {
// Telling the system where to find the Chrome driver
System.setProperty(
"webdriver.chrome.driver",
"E:/chromedriver_win32/chromedriver.exe");
WebDriver webDriver = new ChromeDriver();
// Open google.com
webDriver.navigate().to("http://www.google.com");
String html = webDriver.getPageSource();
// Printing result here.
System.out.println(html);
webDriver.close();
webDriver.quit();
}
}
Ответ 8
Загрузите последнюю версию драйвера chrome и используйте этот код:
System.setProperty("webdriver.chrome.driver", " path of chromedriver.exe");
WebDriver driver= new ChromeDriver();
driver.manage().window().maximize();
Thread.sleep(10000);
driver.get("http://stackoverflow.com");
Ответ 9
Все приведенные выше ответы правильны, следующее - это глубокое погружение в проблему и решение.
Конструктор драйверов в селене, например
WebDriver driver = new ChromeDriver();
выполняет поиск исполняемого файла драйвера, в этом случае chrome-драйвер выполняет поиск исполняемого файла chrome, в случае, если служба не может найти исполняемый файл, исключение выбрано
здесь возникает исключение (обратите внимание на метод проверки)
/**
*
* @param exeName Name of the executable file to look for in PATH
* @param exeProperty Name of a system property that specifies the path to the executable file
* @param exeDocs The link to the driver documentation page
* @param exeDownload The link to the driver download page
*
* @return The driver executable as a {@link File} object
* @throws IllegalStateException If the executable not found or cannot be executed
*/
protected static File findExecutable(
String exeName,
String exeProperty,
String exeDocs,
String exeDownload) {
String defaultPath = new ExecutableFinder().find(exeName);
String exePath = System.getProperty(exeProperty, defaultPath);
checkState(exePath != null,
"The path to the driver executable must be set by the %s system property;"
+ " for more information, see %s. "
+ "The latest version can be downloaded from %s",
exeProperty, exeDocs, exeDownload);
File exe = new File(exePath);
checkExecutable(exe);
return exe;
}
Ниже приведен метод проверки, который генерирует исключение
/**
* Ensures the truth of an expression involving the state of the calling instance, but not
* involving any parameters to the calling method.
*
* <p>See {@link #checkState(boolean, String, Object...)} for details.
*/
public static void checkState(
boolean b,
@Nullable String errorMessageTemplate,
@Nullable Object p1,
@Nullable Object p2,
@Nullable Object p3) {
if (!b) {
throw new IllegalStateException(format(errorMessageTemplate, p1, p2, p3));
}
}
РЕШЕНИЕ: установите свойство системы перед созданием объекта драйвера следующим образом
System.setProperty("webdriver.gecko.driver", "path/to/chromedriver.exe");
WebDriver driver = new ChromeDriver();
Ниже приведен фрагмент кода (для chrome и firefox), где служба драйвера выполняет поиск исполняемого файла драйвера:
Chrome:
@Override
protected File findDefaultExecutable() {
return findExecutable("chromedriver", CHROME_DRIVER_EXE_PROPERTY,
"https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver",
"http://chromedriver.storage.googleapis.com/index.html");
}
FireFox:
@Override
protected File findDefaultExecutable() {
return findExecutable(
"geckodriver", GECKO_DRIVER_EXE_PROPERTY,
"https://github.com/mozilla/geckodriver",
"https://github.com/mozilla/geckodriver/releases");
}
где CHROME_DRIVER_EXE_PROPERTY = "webdriver.chrome.driver"
и GECKO_DRIVER_EXE_PROPERTY = "webdriver.gecko.driver"
аналогично для других браузеров, ниже приведен снимок списка доступной реализации браузера
![введите описание изображения здесь]()
Ответ 10
В Ubuntu вы можете просто установить пакет chromium-chromedriver
:
apt install chromium-chromedriver
Имейте в виду, что это также устанавливает устаревшую версию селена. Чтобы установить последний селен:
pip install selenium
Ответ 11
Скачайте exe файл chromedriver и распакуйте его в текущую папку проекта. Здесь ссылка, где мы можем скачать последнюю версию chromedriver.
https://sites.google.com/a/chromium.org/chromedriver/
Здесь простой код для запуска браузера и навигации по URL.
System.setProperty("webdriver.chrome.driver", "path of chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://any_url.com");