javascript - 如何使用 Selenium IDE 识别滚动条位置

标签 javascript html selenium ide scroll

现在,我知道 Selenium IDE 没有此功能,因此我使用 user-extension.js。这是我的 JavaScript 代码的内容。

Selenium.prototype.getToppos = function ()
{
  var Top;
  Top = window.pageYOffset;
  return Top;
}

在我的 selenium IDE 上,这是我写的

<tr>
<td>verifyToppos</td>
<td>0</td>
<td></td>
</tr>

现在结果是正确的,是0,但是当我检查并使用滚动条后,结果发现这个0不是来 self 想要检查的网站。相反,它检查 selenium IDE 窗口的滚动条位置。无论如何,我可以告诉 Selenium IDE 它应该获取我打开的网站的滚动位置,而不是 Selenium IDE 窗口本身的滚动位置吗?

最佳答案

我用一个简单的 storeEval 命令完成了它:

<!-- jump to the footer, and get the scroll position's Y co-ordinate offset -->
<tr>
    <td>click</td>
    <td>link=Skip to footer</td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>this.browserbot.getUserWindow().pageYOffset</td>
    <td>footerScrollPosition</td>
</tr>

eval 命令中,this.browserbot 为您获取正在运行站点的浏览器实例,而不是 Selenium 测试运行器浏览器实例。

然后,您可以使用 assertEval 命令对结果值执行断言:

<!-- assert that the footer Y position is greater than the main content Y position -->
<tr>
    <td>assertEval</td>
    <td>${footerScrollPosition} > ${contentScrollPosition}</td>
    <td>true</td>
</tr>

(我之前执行了另一个 storeEval 来创建变量 currentScrollPosition)

这对你有用吗?

关于javascript - 如何使用 Selenium IDE 识别滚动条位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18948130/

相关文章:

javascript - promise.all 是如何工作的?

javascript - jQuery else 函数不工作

javascript - 如何在纯 JavaScript 或 Jquery 中创建带有 id 的音频标签

php - 网页样式更改后不起作用

php - 注册时大字或小字

selenium - 如何使用 Selenium WebDriver 进行可行的 Web 冒烟测试?

javascript - W3 slider - 未捕获类型错误 : Cannot read property 'className' of undefined

javascript - Breeze Sequelize 与 MSSQL 可能吗?

python - 如何使用 cssSelector :nth-child(n) to locate element in Python Selenium

c# - 使用基类在多个浏览器中运行 Selenium 测试