Проверка цвета в selenium ide

#selenium #testing #ide #qa

#selenium #тестирование #selenium-ide

Вопрос:

На самом деле я использую selenium IDE для тестирования многих частей веб-сайтов, так что я новичок в этом. Я искал для проверки атрибутов стилей css (например, цвет шрифта, цвет фона и тому подобное) элементов веб-страницы.

Я нашел много документации, использующей команду «VerifyAttribute», но это от 3 до 6 лет назад, и в фактической версии нет этой команды, и, похоже, я не могу найти какой-либо эквивалент.

Я пробовал «VerifyElementPresent» и подобные команды, но тест всегда проходит, хотя я добавил атрибуты css (например, background-color =#333333), потому что элемент присутствует на странице, что бы я ни написал в поле «Значение».

Итак, мои вопросы:

1- Возможно ли проверить атрибуты и значения стилей css с помощью Selenium IDE?

2- Если да, какую команду мне следует использовать и как записать правильное ожидаемое значение?

Ответ №1:

Вы можете использовать execute <script> для выполнения команды JavaScript. В основном вы хотите получить style атрибут элемента или использовать getComputedStyle в зависимости от вашего случая.

Приведенный ниже пример предназначен для https://github.com :

Первым будет execute шаг

 Command : execute
Target : return getComputedStyle(document.querySelector(".Header-old")).backgroundColor
Value : backgroundColor
  

За которым следует assert для извлеченного значения :

 Command : assert
Target : backgroundColor
Value : "rgb(36, 41, 46)"
  

Ответ №2:

rgba_value = элемент.value_of_css_property(‘цвет’)

где элемент найден драйвером.find_element(xpath-значение)

rgb_value = change_css_output_to_rgb_value(rgba_value)

icon_color_name = get_colour_name(rgb_value)