Простые способы проверить, нажимается ли кнопка, с помощью Selenium

Selenium – популярный инструмент для автоматизации веб-браузеров, предоставляющий широкий спектр функций для веб-тестирования и автоматизации. Одна из распространенных задач при тестировании пользовательского интерфейса — проверить, включена ли кнопка и можно ли ее нажать. В этой статье мы рассмотрим несколько методов достижения этой цели с использованием Selenium и Python, а также примеры кода.

Метод 1: использование метода isEnabled()
Метод isEnabled() в Selenium проверяет, включен или нет элемент, включая кнопку. Он возвращает логическое значение: «True», если кнопка включена, и «False», если она отключена. Вот пример:

button = driver.find_element_by_id("button-id")
if button.is_enabled():
    print("Button is enabled and can be clicked!")
else:
    print("Button is disabled and cannot be clicked!")

Метод 2: проверка значения атрибута кнопки
Кнопки часто имеют атрибут, указывающий их состояние, например «отключено» или «включено». Вы можете использовать Selenium для получения значения атрибута и проверки, соответствует ли оно ожидаемому состоянию. Вот пример:

button = driver.find_element_by_id("button-id")
if button.get_attribute("disabled") is None:
    print("Button is enabled and can be clicked!")
else:
    print("Button is disabled and cannot be clicked!")

Метод 3: использование метода get_attribute() с параметром «aria-disabled».
Некоторые кнопки могут иметь атрибут «aria-disabled», указывающий их состояние. Вы можете использовать Selenium, чтобы получить значение этого атрибута и проверить, установлено ли для него значение «истина» или «ложь». Вот пример:

button = driver.find_element_by_id("button-id")
if button.get_attribute("aria-disabled") == "false":
    print("Button is enabled and can be clicked!")
else:
    print("Button is disabled and cannot be clicked!")

Метод 4. Проверка свойств CSS кнопки.
Кнопки могут иметь разные стили, когда они включены или отключены. Вы можете использовать Selenium для получения свойств CSS кнопки и проверки, соответствуют ли они ожидаемым стилям. Вот пример:

button = driver.find_element_by_id("button-id")
if button.value_of_css_property("opacity") == "1":
    print("Button is enabled and can be clicked!")
else:
    print("Button is disabled and cannot be clicked!")

Проверка того, включена ли кнопка и доступна ли она для нажатия, — важнейший шаг в тестировании и автоматизации пользовательского интерфейса. В этой статье мы рассмотрели несколько методов достижения этой цели с использованием Selenium с Python. Используя метод isEnabled(), проверяя значения атрибутов, проверяя «aria-disabled» или проверяя свойства CSS, вы можете гарантировать, что ваши автоматические тесты точно проверят состояния кнопок. Эти методы помогут вам создавать надежные и надежные тесты пользовательского интерфейса с помощью Selenium.

Не забывайте всегда проверять конкретные элементы и атрибуты тестируемых кнопок, поскольку их реализация может различаться на разных веб-сайтах.