现在,我知道 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/