«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как выполнить код JavaScript из Java WebDriver?

Как выполнить код JavaScript из Java WebDriver?

Опубликовано 8 ноября 2024 г.
Просматривать:521

How do I Execute JavaScript code from Java WebDriver?

Выполнение JavaScript WebDriver из Java: расширенное руководство.

Команда, упомянутая в вопросе, ./go webdriverjs, представляет собой команду оболочки, разработанную для настройки и инициализации среды WebDriverJs в определенной папке. Однако важно отметить, что WebDriverJs — это языковая привязка, которая позволяет проводить тесты JavaScript, а не запускать фрагменты JavaScript из Java.

Чтобы запустить код JavaScript в Java WebDriver, используйте следующий подход:

WebDriver driver = new AnyDriverYouWant();
if (driver instanceof JavascriptExecutor) {
    ((JavascriptExecutor)driver).executeScript("yourScript();");
} else {
    throw new IllegalStateException("This driver does not support JavaScript!");
}

В качестве альтернативы рассмотрите:

WebDriver driver = new AnyDriverYouWant();
JavascriptExecutor js;
if (driver instanceof JavascriptExecutor) {
    js = (JavascriptExecutor)driver;
} // else throw...

// later on...
js.executeScript("return document.getElementById('someId');");

JavascriptExecutor предлагает обширную документацию и возможности. В его методеexecuteScript() вы можете выполнять вызовы функций, необработанный JS, возвращать значения и передавать сложные аргументы.

Примеры:

  1. Извлечение веб-элемента, как в driver.findElement( By.id("someId")):
js.executeScript("return document.getElementById('someId');");
  1. Визуализация граница WebElement:
WebElement element = driver.findElement(By.anything("tada"));
js.executeScript("arguments[0].style.border='3px solid red'", element);
  1. Изменение входных данных страницы для переключателей:
js.executeScript(
         "var inputs = document.getElementsByTagName('input');"  
         "for(var i = 0; i 
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3