如何使用webdriverIO和chai测试window.pageYoffset

时间:2018-10-02 14:04:54

标签: javascript selenium-webdriver chai

对于使用WebDriverIO和Chai进行的硒测试,我需要window.pageYoffset的位置。在WebDriverIO中,我找不到执行此操作的方法。我尝试过:

browser.scroll(0, 200);
browser.getAttribute('window','pageYoffset');

引发错误:使用给定的搜索参数(“窗口”)无法在页面上找到元素。

所以,下一次尝试:

browser.scroll(0, 200);
browser.windowHandlePosition();

返回对象:

{
sessionID: ...,
value: {x :10, y: 10,
_status: 0
}

通常 value.y 属性必须为200代表10。

使用 element() $()会带来与第一个示例相同的错误。

当我使用Google搜索时,找不到解决方案,因此希望通过stackoverflow寻求帮助。

1 个答案:

答案 0 :(得分:0)

读取API:http://webdriver.io/api/protocol/execute.html

您正在尝试获取window的属性,但窗口是WebElement的选择器

可能您需要在浏览器中执行Javascript并返回其值。 例如:

browser.scroll(0, 250);

let result = browser.execute(function() {
   return window.pageYOffset;
})

console.log(result.value); // 250