Protractor: Scroll down

xv47 picture xv47 · May 9, 2014 · Viewed 67.5k times · Source

I have an button on my page that is visible when the user scrolls down. Because of this, protractor tests give me an error:

UnknownError: unknown error: Element is not clickable at point (94, 188).

I tried using:

browser.executeScript('window.scrollTo(0,document.body.scrollHeight)');

which worked when I tested it in protractors elementexplorer.js but in my regular tests it doesn't do anything. Any other way around this?

Answer

nilsK picture nilsK · May 9, 2014

You need to wait for the promise to be solved. The following example comes from an open issue

browser.executeScript('window.scrollTo(0,0);').then(function () {
    page.saveButton.click();
})

Update: This is an old question (May of 2014), but still it is getting some visitors. To clarify: window.scrollTo(0, 0) scrolls to the top left corner of the current page.

If you want to scroll to the bottom of your page you could call

window.scrollTo(0, document.body.scrollHeight)

as mentioned by @jsuser in this answer

A more modern approach would be using

browser.actions().mouseMove(element).perform();

Upvotes to @MartinBlaustein in this answer