📝 Практические задания
⚡ Список заданий
- Задание 1: Заполнить huge_form + проверить Alert
- Задание 2: Math.html — вычислить + чекбокс + radio + Alert
- Задание 3: get_attribute.html — getAttribute + форма + Alert
- Задание 4: redirect_accept.html — переключение вкладок + math + Alert
- Задание 5: hover-menu.html — ActionChains hover + клик
- Задание 6: drag-and-drop.html — ActionChains drag_and_drop
- Задание 7: file_input.html — загрузка файла + Alert
Задание 1: Заполнить большую форму и проверить Alert
- Открыть страницу.
- Найти все
input-поля типа text внутри формы. - Ввести в каждое поле значение
"Hello". - Найти кнопку с классом
btn btn-defaultи нажать её. - Дождаться появления Alert.
- Получить текст из alert и убедиться, что он содержит строку
"Congrats, you've passed the task!". - Закрыть Alert через
accept().
Подсказка: используйте find_elements(By.TAG_NAME, "input") + цикл + EC.alert_is_present().
Задание 2: Математическое выражение с чекбоксом и radio
Страница: https://suninjuly.github.io/math.html
- Открыть страницу.
- Найти значение
xв элементеid="input_value". - Вычислить
ln(abs(12 * sin(x)))черезmath. - Ввести результат в поле
id="answer". - Установить флажок чекбокса
id="robotCheckbox". - Выбрать радиокнопку
id="robotsRule". - Нажать кнопку Submit.
- Проверить Alert: текст должен содержать
"Congrats, you've passed the task!".
Задание 3: getAttribute и математическое выражение
- Открыть страницу.
- Найти элемент
id="treasure"и получить значение атрибутаvaluexчерезget_attribute("valuex"). - Вычислить
ln(abs(12 * sin(x))). - Ввести результат в поле
id="answer". - Установить чекбокс
id="robotCheckbox". - Выбрать радиокнопку
id="robotsRule". - Нажать Submit и проверить Alert.
Задание 4: Переключение вкладок и математика
- Открыть страницу.
- Кликнуть по кнопке с классом
trollface, которая открывает новую вкладку. - Запомнить текущую вкладку и найти новую через
window_handles. - Переключиться на новую вкладку.
- Вычислить математическое выражение и ввести ответ.
- Нажать кнопку Submit.
- Дождаться и проверить Alert.
Задание 5: ActionChains — Hover Menu
- Открыть страницу.
- Создать объект
ActionChains. - Навести курсор на элемент с текстом «Dropdown».
- Навести курсор на элемент с текстом «Secondary Menu».
- Кликнуть по элементу «Secondary Action».
- Дождаться заголовка
h1и проверить, что он содержит текст «Secondary Page».
Задание 6: ActionChains — Drag and Drop
- Открыть страницу.
- Найти элемент
id="draggable"и целевую областьid="droppable". - Выполнить
drag_and_drop(draggable, droppable). - Дождаться изменения текста внутри
droppableна «Dropped!». - Проверить результат через assert.
Задание 7: Загрузка файла
- Открыть страницу.
- Заполнить поля:
firstname,lastname,email. - Создать временный текстовый файл с помощью
open(). - Найти
input[type=file]сid="file"и передать абсолютный путь черезsend_keys(os.path.abspath(...)). - Нажать кнопку Submit.
- Дождаться Alert и проверить текст.
- Удалить временный файл через
os.remove().
Решения всех заданий смотрите в Решениях.