在量角器端对端测试中,如何设置元素(例如div)的滚动值,而不是整页。
通过jQuery,人们可以简单地称之为$('.myElement').scrollTop(100);
。这是因为在我的端到端测试中,我想测试当一个特定的<div>
滚动时,我想断言另一个<div>
必须滚动才能保持同步。
答案 0 :(得分:4)
我需要相同的机制,我创建了下面的util方法,它对我来说很好。 ;)
element.getLocation().then(function (location) {
return browser.executeScript('window.scrollTo(' + location.x + ' , ' + location.y + ')');
});
在Btw中,以下内容也有效:
browser.actions().mouseMove(element).perform();
选择你的收藏。 ;)
我更喜欢第一个,因为第二个也会触发mouseOver样式事件。
答案 1 :(得分:1)
selenium没有提供在元素级别滚动的方法。
如果jquery代码执行滚动操作,则在浏览器中运行该代码,如此
driver.executeScript("$('.myElement').scrollTop(100);");