我的标签如下所示:
<ul id="genres-bar" >
当用户选中“Romance”复选框时,带有更改的背景和标记将变为:
<ul id="genres-bar" class=" romance">
如何验证/访问此属性?总而言之,我想验证颜色发生了变化。
我注意到单击复选框后会出现此css片段:
#movies.gen-romance .m-gen-R {
background-color: #FF0000;
}
未检查时它会消失。
我是html,css,xpaths等的新手,我可能只是找不到类似的问题,但到目前为止我的研究还没有给我一个我能理解的答案。
这个答案很有帮助但是在java中。我无法弄清楚如何将它应用于我的问题,但它看起来非常相似:
access css class properties in selenium
这是我到目前为止找到元素的尝试:
verify {@driver.find_element(:xpath, '//*[@id="genres-bar" @class=" romance"]')}
答案 0 :(得分:2)
以下两部分可能对您有所帮助。虽然我不清楚你的需求:
css_value(prop)
和attribute(name)
会很有帮助。在你的情况下。
@driver.find_element(:css, '#genres-bar').css_value('background-color')
# => '#FF0000'
@driver.find_element(:css, '#genres-bar').attribute('class')
# => " romance"
答案 1 :(得分:1)
你做这样的事情
verify {@driver.find_element(:xpath, '//*[@id="genres-bar"][@class=" romance"]')}
或
verify {@driver.find_element(:xpath, '//*[@id="genres-bar" and @class=" romance"]')}
你几乎得到了正确的xpath。