Текстовые поля:
<input type="text">
- однострочное текстовое поле<textarea>
- многострочное текстовое поле<input type="password">
- поле для пароляПример локатора в Selenium:
By usernameField = By.id("username");
Кнопки:
<button>
- универсальная кнопка<input type="submit">
- кнопка отправки формы<input type="button">
- обычная кнопкаЧекбоксы и радиокнопки:
<input type="checkbox">
- флажок (множественный выбор)<input type="radio">
- радиокнопка (одиночный выбор)Выпадающие списки:
<select>
с <option>
- стандартный выпадающий списокСсылки:
<a href="...">
- гиперссылки#section
), mailto:, tel:Меню и навигационные панели:
<nav>
, <ul>
, <li>
Изображения:
<img src="...">
- статические изображения<picture>
- адаптивные изображенияВидео и аудио:
<video>
- встроенное видео<audio>
- аудио контентТаблицы:
<table>
, <tr>
, <td>
, <th>
Списки:
<ul>
- маркированный список<ol>
- нумерованный список<dl>
- список определенийСемантические элементы:
<header>
, <footer>
, <article>
, <section>
<main>
, <aside>
, <nav>
Элементы прогресса:
<progress>
- индикатор выполнения<meter>
- скалярное значение в диапазонеМодальные окна:
<div>
с CSS/JS<dialog>
(HTML5)Вкладки (Tabs):
<div>
с атрибутами role="tab"Карусели (Sliders):
Основные стратегии локации в Selenium/Playwright:
// По ID (самый надежный способ)
By.id("elementId")
// По имени
By.name("username")
// По классу
By.className("btn-primary")
// По CSS-селектору
By.cssSelector("input[type='submit']")
// По XPath (мощно, но хрупко)
By.xpath("//button[contains(text(),'Submit')]")
Валидация состояний:
Проверка атрибутов:
Тестирование взаимодействия:
Визуальное тестирование:
знание веб-элементов и их свойств критически важно для QA-инженеров, особенно при автоматизации тестирования. Современные веб-приложения используют как стандартные HTML-элементы, так и сложные кастомные компоненты, требующие особых подходов к тестированию.