【问题标题】:access css class properties in selenium访问 selenium 中的 css 类属性
【发布时间】:2012-08-06 19:14:27
【问题描述】:

我有一个 HTML <div> 元素并希望使用 Selenium 检查它是否左对齐。但是float:left CSS 属性是在 CSS 类中定义的。

有什么方法可以通过 Selenium 访问 CSS 类属性?或者还有其他方法可以获得这个值吗?

<div class="myclass">
...
</div>

在sample.css中

.myclass{
   float:left;
}

我试图使用getEval() - this.page().findElement("foo") 来寻找获取 CSS 类属性的方法。

【问题讨论】:

    标签: selenium automated-tests


    【解决方案1】:

    通过 webdriver,您可以使用 css 选择器:

    WebElement element = driver.findElement(By.cssSelector(".myclass"));
    String float = element.getCssValue("float");
    

    参见 WebElement 的Javadoc

    更新答案!

    【讨论】:

    • 是的,我可以按照您提到的方式进行操作。但是,我希望(通过 Selenium)检查这个
      元素是否左对齐。所以基本上,我需要一种通过 Selenium 访问 CSS 类“myclass”中定义的“float:left”CSS 属性的方法。
    • 似乎是一个不错的解决方案,但是我们没有使用webdriver,所以不能使用这个解决方案。我正在尝试使用 getElementPositionLeft 并提供一个范围来检测左对齐。不是一个很好的解决方案,但仍然使用它。
    • 你确定你没有使用 WebDriver 吗? findelement() 是 WebDriver API 的一部分,而不是 Selenium RC API。
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签