1

现在,我知道 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 不是来自我想要检查的网站。相反,它正在检查 selenium IDE 窗口的滚动条位置。无论如何我可以告诉 Selenium IDE 它应该获得我打开的网站的滚动位置,而不是它自己的 Selenium IDE 窗口?

4

1 回答 1

0

我用一个简单的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

这对你有用吗?

于 2015-05-05T13:54:00.847 回答