4

获取(selenium webdriver)中提到其ID的DIV标签的背景图像CSS属性的Xpath可以是什么?

例如:(div id="abc", style="width: 538px !important; height: 242px !important; background-image: url( http://test.com/images/abc.png ); position: relative;背景位置:0% 0%;")

我想用 url 找到这张图片:( http://test.com/images/abc.png )

4

1 回答 1

14

我不明白你的问题,请格式化并扩展一下,这对我来说有点模糊。

我假设您想问以下问题之一,但不确定是哪个问题。

  • 如何获取使用 Selenium的background-imageCSS 属性?div

答:在其他语言绑定中使用 Selenium 的本机GetCssValue()(C#)、css_value(Ruby) 或等效方法。

IWebElement abc = driver.FindElement(By.XPath("//[@id='abc']")); // use XPath as you requested
string imageUrl = abc.GetCssValue("background-image");
  • 如何使用 XPath 通过其 CSS 属性定位div元素?background-image

答:如果您不想使用 ID(在本例中应该使用 ID),您完全可以在 CssSelector 或 XPath 中使用。(XPath 是您应该选择的最后一个选项)

IWebElement abc = driver.FindElement(By.XPath("//div[contains(@style, 'background-image: url(http://test.com/images/abc.png);')]"));
  • 如何使用 XPath 获取元素的属性内容background-image

答案:对 Selenium 不是很有用,但在这里你有它://div[@id='abc']/@style

于 2013-09-16T09:10:00.920 回答