📝 Задания: вопросы самопроверки
⚡ Вопросы одним списком
- Что такое локатор веб-элемента?
- Перечислите основные способы локализации элементов.
- Что такое XPath?
- Как быстро скопировать локатор в DevTools?
- Как провести поиск элемента по ID?
- В чём заключается обработка ошибки
NoSuchElementException? - Что такое метод
is_displayed()в Selenium? - Что такое метод
find_elements()в Selenium? - Чем
find_element()отличается отfind_elements()?
Блок 1: Базовые понятия
Вопрос 1 (из экспресс-опроса)
Что такое локатор веб-элемента?
Опишите своими словами. Что он позволяет делать? В каких инструментах используется?
Вопрос 2 (из экспресс-опроса)
Перечислите основные способы локализации элементов.
Назовите хотя бы 5 стратегий By.* и кратко опишите, для чего каждая используется.
Блок 2: XPath и CSS
Вопрос 3 (из экспресс-опроса)
Что такое XPath?
Чем XPath отличается от CSS-селекторов? Когда предпочесть XPath?
Вопрос 4 (из экспресс-опроса)
Как быстро скопировать локатор в DevTools?
Опишите шаги. Как открыть DevTools? Что такое «Copy selector» и «Copy XPath»? В чём проблема скопированного XPath?
Вопрос 5: Написать CSS и XPath
Дан HTML:
<div class="container">
<button class="btn-primary">Купить</button>
</div>
Напишите:
- CSS-селектор для прямого потомка
buttonвнутри.container - XPath для поиска кнопки с текстом «Купить»
- XPath для поиска любого потомка
buttonвнутри.container
Блок 3: Методы find_element / find_elements
Вопрос 6 (из экспресс-опроса)
Как провести поиск элемента по ID?
Напишите минимальный пример кода: импорты + запуск браузера + find_element по ID + вывод текста.
Вопрос 7 (из экспресс-опроса)
В чём заключается обработка ошибки NoSuchElementException?
Напишите пример try-except. Почему важно обрабатывать это исключение в тестах?
Блок 4: is_displayed и find_elements
Вопрос 8 (из экспресс-опроса)
Что такое метод is_displayed() в Selenium?
Перечислите как минимум 3 ситуации, в которых он вернёт False.
Вопрос 9 (из экспресс-опроса)
Что такое метод find_elements() в Selenium?
Чем отличается от find_element()? Что вернёт, если элементов нет?
Вопрос 10: Практическое задание
Напишите тест для https://the-internet.herokuapp.com/login, который:
- Открывает страницу
- Находит поля
usernameиpasswordпо ID - Вводит
tomsmith/SuperSecretPassword! - Нажимает кнопку Login
- Проверяет, что появилось сообщение «You logged into a secure area!»
- Проверяет, что кнопка Logout видима (
is_displayed())