Назад к вопросам
Junior — Middle
84
Как бы вы реализовали структуру главной страницы Яндекса, применяя паттерн Page Object?
Ответ от нейросети
sobes.tech AI
Паттерн Page Object предполагает создание класса, который инкапсулирует взаимодействие с элементами страницы и предоставляет методы для действий и получения данных.
Для главной страницы Яндекса можно создать класс YandexMainPage, который содержит локаторы для основных элементов: поисковая строка, кнопка поиска, ссылки на сервисы и т.д. Внутри класса реализуются методы, например, enterSearchQuery(String query), clickSearchButton(), openMailService().
Пример на Java с использованием Selenium:
public class YandexMainPage {
private WebDriver driver;
private By searchInput = By.id("text");
private By searchButton = By.cssSelector("button[type='submit']");
public YandexMainPage(WebDriver driver) {
this.driver = driver;
}
public void enterSearchQuery(String query) {
driver.findElement(searchInput).sendKeys(query);
}
public void clickSearchButton() {
driver.findElement(searchButton).click();
}
// Можно добавить методы для проверки видимости элементов, перехода по ссылкам и т.д.
}
Такой подход облегчает поддержку тестов, так как изменения в UI требуют правок только в Page Object, а не во всех тестах.