量角器 - 硒滚动行为与chrome和firefox之间的区别

时间:2016-05-17 09:17:21

标签: selenium firefox protractor

目前我在使用firefox时失败了。单击按钮时出现的页面上有一个下拉列表。然后我查看该下拉列表中的每个元素。

现在这个列表很长,需要滚动页面来查找所有元素,这不是Chrome上的问题,但是在firefox上,但是当量角器想要将下一个元素滚动到视图中时,下拉div似乎会关闭。

我怀疑这是因为selenium点击页面或其他东西开始滚动。 (手动测试时,我注意到在下拉列表外单击会关闭该下拉列表)

如何验证这是否正在发生并且可以更改?滚动时硒真正经历了哪些步骤?

public.clickDcdButton = function() {
    log('clicking dcd button', 'yellow');
    return element(by.className('multiSelect')).click();
};

public.setCollections = function(collectionArray) {
    return public.clickDcdButton().then(function() {
        return selectNone.click();
    }).then(function() {
        return collections.each(function(collection, index) {
            H.util.scrollIntoView(collection).then(function() {
                browser.wait(EC.visibilityOf(collection), 5000);
            }).then(function() {
                log('into view');
                return collection.getText();
            }).then(function(text) {
                log(text, 'yellow');
                if (collectionArray.indexOf(text.slice(1)) != -1) {
                    return collection.click();
                }
            });
        });
    }).then(function() {
        return public.clickDcdButton()
    });
};

1 个答案:

答案 0 :(得分:0)

我认为你应该等到承诺解决了:

尝试这个逻辑:

browser.executeScript(' window.scrollTo(10,10);')。then(function(){     page.Button.click(); })