1

我有一个如下所示的标签:

<ul id="genres-bar" >

当用户选择“浪漫”复选框时,背景会发生变化,标签变为:

<ul id="genres-bar" class=" romance">

如何验证/访问此属性?总之,我想验证颜色是否发生了变化。

我注意到单击复选框时会出现此 css 片段:

#movies.gen-romance .m-gen-R {
    background-color: #FF0000;
}

不检查时它会消失。

我是 html、css、xpaths 等的新手,我可能只是很难找到类似的问题,但到目前为止我的研究还没有给我一个我能理解的答案。

这个答案很有帮助,但在 java 中。我不知道如何将它应用于我的问题,但它看起来很相似:

访问 selenium 中的 css 类属性

这是我到目前为止定位元素的尝试:

verify {@driver.find_element(:xpath, '//*[@id="genres-bar" @class=" romance"]')}
4

2 回答 2

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"
于 2013-06-27T20:43:19.933 回答
1

你如何做这样的事情

verify {@driver.find_element(:xpath, '//*[@id="genres-bar"][@class=" romance"]')}

或者

verify {@driver.find_element(:xpath, '//*[@id="genres-bar" and @class=" romance"]')}

你几乎得到了正确的 xpath。

于 2013-06-27T21:08:47.483 回答