Перейти к содержимому

Selenium IDE 3: стартовый уровень
онлайн, начало 19 апреля
Школа для начинающих тестировщиков
онлайн, начало 22 апреля
Тестирование REST API
онлайн, начало 22 апреля
Тестирование юзабилити (usability)
онлайн, начало 24 апреля
Фотография

Как проверить цвет кнопки Selenium Python

selenium python verify color

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1 6axys

6axys

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 27 Март 2017 - 13:38

Добрый день уважаемые форумчане.
Столкнулся с такой проблемой, не могу проверить цвет кнопки, точнее код я написал, но система в упор не видит

Юзаю Selenium Webdriver 3 + Python

 

часть кода 

 

aboutus = self.driver.find_element_by_xpath('//*[@id="_master"]/div[1]/div/header/div[2]/div/div/div[2]/nav/menu/li[1]/a').get_attribute('background-color')
self.assertEqual('About us', '#eeaf3a', aboutus)

 

ошибка следующая:

 

F
======================================================================
FAIL: test_MainMenu (__main__.TestHeaderMainMenu)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:/Projects/Writedom/dev/Signup/WindowsGoogleChrome/test_HeaderMainMenu.py", line 45, in test_MainMenu
    self.assertEqual('About us', '#eeaf3a', aboutus)
AssertionError: 'About us' != '#eeaf3a'
 
----------------------------------------------------------------------
Ran 1 test in 26.001s
 
FAILED (failures=1)
 
Пробовал и через getCssValue, выдает что у данного вэб-элемента нет такого аттрибута.
 
Подскажите плиз, что не так делаю.

  • 0

#2 Spock

Spock

    Гуру

  • Members
  • PipPipPipPipPipPip
  • 1 356 сообщений
  • ФИО:Роман

Отправлено 27 Март 2017 - 13:46

неправильный порядок параметров в assertEqual?


  • 0

#3 ommonick

ommonick

    Новый участник

  • Members
  • Pip
  • 4 сообщений
  • ФИО:Стручин Егор Николаевич

Отправлено 27 Март 2017 - 13:53

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

Когда вам тест явно покажет что вы цепляете именно нужное вам значение - тогда и проверяйте его.


  • 0

#4 6axys

6axys

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 27 Март 2017 - 13:59

Спасибо за ответы, но я нашел решение, если кому интересно:

rgba = self.driver.find_element_by_xpath('//*[@id="_master"]/div[1]/div/header/div[2]/div/div/div[2]/nav/menu/li[1]/a').value_of_css_property('background-color')
r, g, b, alpha = ast.literal_eval(rgba.strip("rgba"))
hex_value = '#%02x%02x%02x' % (r, g, b)
if not hex_value == '#eeaf3a':
raise Exception('Button color is missing')


  • 0

#5 ommonick

ommonick

    Новый участник

  • Members
  • Pip
  • 4 сообщений
  • ФИО:Стручин Егор Николаевич

Отправлено 27 Март 2017 - 14:17

Спасибо за ответы, но я нашел решение, если кому интересно:

rgba = self.driver.find_element_by_xpath('//*[@id="_master"]/div[1]/div/header/div[2]/div/div/div[2]/nav/menu/li[1]/a').value_of_css_property('background-color')
r, g, b, alpha = ast.literal_eval(rgba.strip("rgba"))
hex_value = '#%02x%02x%02x' % (r, g, b)
if not hex_value == '#eeaf3a':
raise Exception('Button color is missing')

То есть если код цвета отличается - то эксепшн будет о том что цвет вовсе отсутствует? как-то нелогично


  • 0

#6 6axys

6axys

    Новый участник

  • Members
  • Pip
  • 9 сообщений

Отправлено 27 Март 2017 - 14:20

 

Спасибо за ответы, но я нашел решение, если кому интересно:

rgba = self.driver.find_element_by_xpath('//*[@id="_master"]/div[1]/div/header/div[2]/div/div/div[2]/nav/menu/li[1]/a').value_of_css_property('background-color')
r, g, b, alpha = ast.literal_eval(rgba.strip("rgba"))
hex_value = '#%02x%02x%02x' % (r, g, b)
if not hex_value == '#eeaf3a':
raise Exception('Button color is missing')

То есть если код цвета отличается - то эксепшн будет о том что цвет вовсе отсутствует? как-то нелогично

 

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


  • 0

#7 ommonick

ommonick

    Новый участник

  • Members
  • Pip
  • 4 сообщений
  • ФИО:Стручин Егор Николаевич

Отправлено 27 Март 2017 - 19:57

 

 

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

Ну так и пишите ассерт на то что Incorrect button color. Ваши тесты потом может другой тестировщик или разработчик прочитать, что он должен понять из надписи Button color is missing? Что поле "bg-color" не возвращает значение? будет ковыряться, проверять это, потратит время.


  • 1


Selenium 2.0: стартовый уровень
онлайн
Программирование на Java для тестировщиков
онлайн
Автоматизация функционального тестирования
онлайн
Selenium WebDriver: полное руководство
онлайн




Темы с аналогичным тегами selenium, python, verify color

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Яндекс.Метрика
Реклама на портале