Java: Selenium

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

После первого запуска браузера можно перейти к базовым действиям на странице. В этом уроке мы разберем ввод текста, очистку полей, получение текста и атрибутов, а также соберем простой сценарий авторизации.

Ввод текста и очистка полей

Для ввода текста используется метод sendKeys(). Если поле уже заполнено, его можно очистить через clear():

import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

class InputTest {
    @Test
    void fillLogin() {
        var driver = new ChromeDriver();
        driver.get("https://example.com/login");

        var username = driver.findElement(By.name("username"));
        username.clear();
        username.sendKeys("tester");

        driver.quit();
    }
}

Получение текста и атрибутов

Для проверки содержимого страницы часто нужен текст элемента или значение его атрибута. Для этого используются getText() и getAttribute():

import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

class ReadTextTest {
    @Test
    void readTextAndAttribute() {
        var driver = new ChromeDriver();
        driver.get("https://example.com/login");

        var heading = driver.findElement(By.tagName("h1"));
        var text = heading.getText();

        var input = driver.findElement(By.name("username"));
        var placeholder = input.getAttribute("placeholder");

        driver.quit();
    }
}

getText() возвращает видимый текст элемента, а getAttribute() — значение конкретного атрибута.

Пример сценария авторизации

Соберем короткий сценарий: открыть страницу, заполнить форму и нажать кнопку входа.

import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

class LoginTest {
    @Test
    void login() {
        var driver = new ChromeDriver();
        driver.get("https://example.com/login");

        var username = driver.findElement(By.name("username"));
        var password = driver.findElement(By.name("password"));
        var loginButton = driver.findElement(By.id("submit"));

        username.sendKeys("tester");
        password.sendKeys("12345");
        loginButton.click();

        driver.quit();
    }
}

В следующих уроках мы добавим проверки и ожидания, чтобы такие сценарии были стабильными и надежными.

Закрытие сессии браузера

После завершения сценария важно закрыть браузер через quit(). Этот метод завершает сессию WebDriver и останавливает процессы браузера. Если не закрывать сессию, тесты будут оставлять лишние процессы в системе.

Рекомендуемые программы

+7 800 100 22 47

бесплатно по РФ

+7 495 085 21 62

бесплатно по Москве

108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845