isEnabled(). Давайте начнем с удобного метода под названиемisEnabled(). Этот метод позволяет проверить, включен или отключен элемент на веб-странице. Это особенно полезно, если вы хотите проверить, является ли поле ввода, кнопка или флажок интерактивным.
const element = driver.findElement(By.id('myButton'));
const isEnabled = await element.isEnabled();
console.log(`Is the element enabled? ${isEnabled}`);
click(). Методclick()подойдет, когда вам нужно имитировать нажатие пользователем элемента. Будь то кнопка, ссылка или даже переключатель, этот метод запускает соответствующее действие, как если бы человек физически взаимодействовал с веб-страницей.
const element = driver.findElement(By.cssSelector('.myButtonClass'));
await element.click();
sendKeys(): Если вам нужно ввести текст в поля ввода, на помощь приходит методsendKeys(). Он имитирует ввод пользователем текста на клавиатуре и идеально подходит для автоматизации отправки форм или ввода данных.
const element = driver.findElement(By.name('myInputField'));
await element.sendKeys('Hello, WebDriver!');
getText(). Извлечение текстового содержимого из элементов — распространенная задача в автоматизации пользовательского интерфейса. МетодgetText()позволяет получить видимый текст внутри элемента, что может быть полезно для проверки или выполнения дальнейших действий на основе извлеченного текста.
const element = driver.findElement(By.xpath('//h1'));
const text = await element.getText();
console.log(`The extracted text is: ${text}`);
getAttribute(). Иногда вам может потребоваться получить значение определенного атрибута, связанного с элементом. МетодgetAttribute()позволяет получить доступ к таким атрибутам, какhref,srcилиdata-*, предоставляя вам гибкость. для взаимодействия с элементами на основе значений их атрибутов.
const element = driver.findElement(By.id('myLink'));
const href = await element.getAttribute('href');
console.log(`The link's href attribute value is: ${href}`);
isDisplayed(). Хотите знать, является ли элемент видимым или скрытым? Вам на помощь придет методisDisplayed(). Он позволяет вам проверять статус видимости элемента на веб-странице и принимать решения на основе его видимости.
const element = driver.findElement(By.className('myElement'));
const isDisplayed = await element.isDisplayed();
console.log(`Is the element displayed? ${isDisplayed}`);
getSize(). Хотите узнать размеры элемента? МетодgetSize()предоставляет вам ширину и высоту элемента, что позволяет выполнять утверждения или вычисления, связанные с размером.
const element = driver.findElement(By.tagName('img'));
const size = await element.getSize();
console.log(`The element's size is ${size.width}x${size.height} pixels`);
getLocation(). Если вы хотите определить расположение элемента относительно верхнего левого угла веб-страницы, вам поможет методgetLocation(). Он возвращает координаты элемента (X и Y) и позволяет вам взаимодействовать с элементами в зависимости от их положения.
const element = driver.findElement(By.id('myElement'));
const location = await element.getLocation();
console.log(`The element is located at (${location.x}, ${location.y})`);
Имея в своем распоряжении эти методы, у вас теперь есть прочная основа для автоматизации взаимодействия с пользователем с помощью JavaScript WebDriver. Не забудьте изучить официальную документацию WebDriver, чтобы узнать о более интересных возможностях и крайних случаях.
Включите эти методы в свой рабочий процесс и наблюдайте, как эффективность вашей веб-разработки резко возрастет! Попрощайтесь с монотонным ручным тестированием и воспользуйтесь возможностями автоматизации с помощью JavaScript WebDriver.