元素在selenium / robotframework中的背景颜色

时间:2016-07-27 11:18:46

标签: selenium robotframework

有没有办法在selenium robotframework中获取元素的背景颜色?我尝试使用get属性但它不会工作并返回$&

这是html

None

2 个答案:

答案 0 :(得分:3)

虽然您可以使用JavaScript来获取计算出的样式,但我相信获得样式的惯用方法是使用Selenium的API。使用webelement获取Get Webelement引用后,您可以使用value_of_css_property方法获取背景颜色。

Open Browser    https://www.stackoverflow.com    gc
${elem}    Get Webelement    css=.post-tag
${bg color}    Call Method    ${elem}    value_of_css_property    background-color
  

结果:$ {bg color} = rgba(225,236,244,1)

我在此测试中注意到的一个区别是value_of_css_property返回了rgba值,而getComputedStyle只返回了rgb。

Selenium2LibraryExtension尝试通过实施Element Background Color Should Be来简化这一过程。那里也使用了value_of_css_property。

答案 1 :(得分:2)

你可以使用javascript来做到这一点 return document.defaultView.getComputedStyle(document.getElementByID("ID"),null)['background-color']

如果它是一个类,那么document.getElementsByClassName("class-name")[0],null)['background-color']