1

我想检查我正在处理的 Web 应用程序上元素的位置。这是一个稳定的应用程序,因此职位不会发生太大变化。在网上搜索后,我找到了这个方法:

Point getLocation()

页面上的哪个位置是渲染元素的左上角?

返回:一个点,包含元素左上角的位置

在玩了一点之后,我意识到位置取决于窗口大小和屏幕分辨率(虽然我在某个地方读过它,但我仍然检查它只是为了确保它是真的)。

还有其他方法吗?我有很多元素,因此仅根据一组分辨率和窗口尺寸存储一些值会很棘手。那将是很多工作。

最后,在视觉方面,没有什么比手动测试更好的了:D

4

1 回答 1

1

必须取决于窗口大小,因为页面的布局会随着窗口大小而变化。

你所要求的本质上是:

我是否可以像窗口无限宽和无限高一样获得页面上元素的位置,以便结果是静态的?

不,对不起,你不能那样做,因为你可能是第一个想做这样事情的人。你要求的职位毫无意义。此外,这些数字很可能因浏览器而异。

我相信你有两个选择:

  1. 为此测试设置固定的窗口大小。如果您每次都以 1024*768 像素运行测试,它通常不会中断。在这种情况下,您的职位不应该改变,您会得到结果。
    • 奖励想法:您可以获得页面的屏幕截图并比较图像。如果页面的内容或多或少是静态的,您的屏幕截图将始终相同,因此您可以将其与参考屏幕截图进行比较。
  2. 不要检查绝对数字,例如尝试检查 a 是否WebElement包含正确的文本、图像(以及图像是否已加载),甚至a 是否在WebElement视觉上包含在 another 中WebElement
于 2013-02-02T13:54:55.783 回答