Учебники

79) Обновить страницу с помощью Selenium

Во время автоматизации тестирования веб-приложения возникает необходимость многократного обновления страницы для полной загрузки всех веб-элементов. При начальной загрузке страницы некоторые веб-элементы могут быть загружены, в то время как для загрузки всех веб-элементов требуется второе обновление страницы. Это можно сделать с помощью команды refresh, предоставленной веб-драйвером Selenium. Операция обновления браузера может быть выполнена с помощью следующих способов в Selenium. Мы обсудим нижеприведенные способы подробно в статье.

  1. Команда Driver.navigate.refresh
  2. Команда Отправить ключи
  3. Команда Driver.navigate.to

Команда Driver.navigate.refresh:

Это встроенный метод для выполнения операции обновления страницы, предоставляемый веб-драйвером Selenium. Эта команда является наиболее часто используемой в автоматизации тестирования для выполнения операции обновления страницы. Команда обновления может быть использована простым способом, как упомянуто ниже.

driver.get("http://demo.guru99.com/selenium/guru99home/");
driver.navigate().refresh();

Навигация — это интерфейс, который используется для выполнения различных операций браузера, таких как переход на предыдущую страницу, переход на следующую страницу, обновление страницы, закрытие браузера. Доступ к методам интерфейса навигации можно получить с помощью команды driver.navigate (). Метод обновления интерфейса навигации не принимает никаких аргументов и не возвращает никаких значений.

Пример:

Тестовый сценарий:

  1. Откройте браузер Firefox с веб-страницей — http://demo.guru99.com/selenium/guru99home/
  2. После успешной загрузки страницы обновите веб-страницу с помощью метода driver.navigate.refresh.
  3. Закройте браузер с помощью метода driver.close ()

Код

package Guru99Demo;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class RefreshDemo {
public static void main(String args[]) throws InterruptedException
{
System.setProperty("webdriver.chrome.driver", "D: \\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://demo.guru99.com/selenium/guru99home/");
driver.manage().window().maximize();
driver.navigate().refresh();
driver.close();
}
}

Вывод кода:

Начальная загрузка страницы

После обновления страницы… видео изменилось

Несколько других способов обновить страницу

1) Получить метод:

Метод Get может быть использован рекурсивным способом для обновления страницы. Для этого нам нужно передать другой метод в качестве аргумента методу get.

Пример:

driver.get("https://www.guru99.com");
driver.get(driver.getCurrentURL());

2) метод навигации:

Этот метод использует ту же концепцию рекурсии, что упоминалась выше. Метод getCurrentURL () передается в качестве аргумента методу driver.navigate.to.

Пример:

driver.get("https://www.guru99.com");
driver.navigate.to(driver.getCurrentURL());

3) Метод отправки ключей с использованием клавиши F5:

Это второй наиболее часто используемый метод обновления страницы в Selenium. В качестве аргумента для отправки ключей используется ключ обновления (клавиша F5). Поскольку ключи отправки работают только с веб-элементами, а не с браузером, мы должны сначала определить допустимый веб-элемент на веб-странице, а затем использовать метод отправки ключей. Это может быть выполнено, как показано ниже.

Пример:

driver.get("https://www.guru99.com");
driver. findElement(By.id("username")).sendKeys(Keys.F5); 

4) Метод отправки ключей с использованием кода ASCII:

Этот метод использует ту же концепцию, что и выше, но вместо того, чтобы передавать ключ F5 в качестве аргумента, мы отправляем ASCII-код ключа обновления в качестве аргумента. Это может быть выполнено, как показано ниже.

driver.get("https://www.guru99.com");
driver. findElement(By.id("username")).sendKeys(“\uE035”); 

Резюме:

  • Операция обновления страницы гарантирует, что все веб-элементы страницы полностью загружены, прежде чем мы приступим к автоматизации наших тестов.
  • Наиболее часто используемый метод обновления страницы в Selenium — это метод driver.navigate (). Refresh ().
  • Метод Get и методы навигации включают рекурсивные способы обновления страницы в Selenium.
  • Метод Send Keys можно использовать для обновления страницы, передавая ключ F5 в качестве аргумента или соответствующий ему код ASCII.