【问题标题】:Selenium Dom values are not updatedSelenium Dom 值未更新
【发布时间】:2010-02-03 00:05:04
【问题描述】:

我在 Selenium 中使用 IE6/8 看到了一个问题,这给我带来了一些不好的时间。问题是 DOM 窗口属性在操作完成后不会更新,并且总是返回默认值。

举几个例子:

  1. 浏览器首先以正常大小 (document.body.clientHeight = 500px) 启动。在我进行窗口最大化后,属性保持500px

  2. 滚动顶部偏移量(document.body.scrollop)最初是0,然后我进行滚动,当我访问该属性时,直到0

以前有没有人见过这个问题,或者可能知道是什么原因造成的?

【问题讨论】:

  • 您能否说明您访问浏览器的方式,因为我认为 可能 是问题所在。 Selenium 包装了 window 对象,这在进行正常的 JavaScript DOM 访问时可能会导致问题
  • 这里... ISelenium selenium = new DefaultSelenium("localhost", 4444, "*iexplore", destinationUri.AbsoluteUri.ToString()); selenium.GetEval("window.scrollBy(0,50)"); int offset = Convert.ToInt32(selenium.GetEval("documnet.body.scrollTop"));

标签: selenium


【解决方案1】:

要在 Selenium 测试中访问 Window 和 document 对象,您需要输入 this.browserbot.getUserWindow()。它使您可以访问 Selenium 正在处理的页面。

int offset = Convert.ToInt32(selenium.GetEval("this.browserbot.getUserWindow().document.body.scrollTop"));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-08
    • 2021-02-13
    • 1970-01-01
    相关资源
    最近更新 更多