3

我有一个显示动态布局(由 extjs 生成)的网页,它应该占据 100% 的宽度。我在用

WebElement element = driver.findElement(By.id("ext-gen4"));

String backgroundColor = element.getCssValue("width");

但目前它正在返回以像素为单位的宽度,并且 WebDriver 浏览器 (Firefox) 未以最大模式显示,因此该值甚至更小。有什么办法可以得到 % 的值吗?我开始知道一些 GetCssProperty 类,但我无法正确使用它。有什么细节吗?我正在将 Selenium WebDriver 2.23 与 JUnit 一起使用。

我想必须有一种方法可以最大化窗口。

4

2 回答 2

2

正如 Slanec 所说,您可以最大化您的窗口,例如

driver.manage().window().maximize()

比你可以创建一个方法

private float getWidthInRelationToWindow(WebElement element){
    return ((float)element.getSize().getWidth())/
                  this.drivy.manage().window().getSize().getWidth();
}
于 2012-07-19T12:36:25.770 回答
0

使用它来最大化:

driver.manage().window().maximize()

甚至全屏:

driver.findElement(By.tagName("html")).sendKeys(Keys.F11);

除了像素之外,您无法获得其他值 - 您必须自己计算百分比。请注意,您甚至不必使用 CSS 值,agetSize()上有一个方法WebElement也可用于获取<html><body>元素的大小,然后您甚至不需要最大化。

于 2012-07-19T10:14:15.393 回答