Как использовать selenium webdriver на локальной (на моем компьютере) веб-странице вместо того, чтобы найти где-нибудь на www?

Мне нужно использовать selenium webdriver на веб-странице, которую у меня есть на моем жестком диске. я пробовал что-то вроде:

selenium = new WebDriverBackedSelenium(driver, "C:\\...dispatcher.html");

вместо обычного:

selenium = new WebDriverBackedSelenium(driver, "http://www.dunnowhattodo.org");

Но это не работает (я получаю сообщение об ошибке "неизвестный протокол: c" )

Возможно ли это? im kinda новый пользователь selenium webdriver, так что это может быть глупый вопрос, но все же я буду appriciate каждую помощь, я получу:)

Ответы

Ответ 1

Попробуйте использовать этот метод:

webdriver.get("file:///D:/folder/abcd.html");

(или)

selenium = new WebDriverBackedSelenium(driver, "file:///D:/folder/abcd.html");

Ответ 2

Когда вы вызываете метод driver.get(URL), WebDriver ищет HTTP-запрос, используя в качестве базового javascript, поэтому, ссылаясь на сайт как на путь, эта задача будет невозможна.

Но это будет возможно, если вы: 1. Установите Apache WebServer (скажем) на ваш марш. 2. Загрузите или выйдите на WebServer, это веб-приложение (dispatcher.html) Третий - попробуйте записать и выполнить ваши тестовые файлы на [http://localhost: 8080/dispatcher.html] (8080 - это порт по умолчанию, но вы можете настроить его на другие).

Ответ 3

Для тех из нас, кто использует java.nio, мы также можем сделать следующее:

webdriver.get("file:\\\\\\" + filePath);

... где filePath - объект типа java.nio.file.Path и представляет собой абсолютный путь.

Ответ 4

Это также можно сделать с помощью относительного файла:

Path sampleFile = Paths.get("sample.html");
driver.get(sampleFile.toUri().toString());