如何验证鼠标悬停时元素的颜色是否发生了变化?

时间:2013-07-31 07:47:52

标签: ruby selenium-webdriver

如果鼠标悬停在https://stackoverflow.com/网站的“提问”按钮上,则按钮的颜色会变为黄色。如果我想确定,如果鼠标悬停时颜色真的发生变化,我怎样才能使用Selenium WebDriver实现这一目标?我在html dom中找不到任何有用的东西。

我可以使用move_to方法将鼠标悬停在元素上,但不知道如何检查按钮颜色是否会发生变化?我想,我必须检查CSS风格,但不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

使用css_value,请参阅documentation here。请注意,在这种特殊情况下,此背景颜色属性位于<li>,而不是<a>

btn_ask_question = driver.find_element(:css, '.nav.askquestion li')
puts btn_ask_question.css_value('background-color')

driver.action.move_to(btn_ask_question).perform
puts btn_ask_question.css_value('background-color')

我的输出(rgba(255,153,0,1)是#FF9900,这是橙色):

  

rgba(119,119,119,1)

     

rgba(255,153,0,1)