Scroll an element into view during your automated test
Sometimes the element you need to interact with isn’t visible until you scroll the page. Whether it’s a button at the bottom of a long form, an image gallery halfway down the page, or interactive content hidden below the fold, real user behaviour often requires scrolling first.
The Scroll step lets your test move the viewport so that a specific element becomes visible before you interact with it. This mirrors how a user would scroll the page until the thing they want to click, check, or read appears.
Why scroll matters
Many pages today use long layouts, lazy loading, or dynamic content that only reveals itself when the user scrolls. Without explicitly moving the viewport, your automation might:
Try to interact with off-screen elements
Fail to trigger hover or click events
Miss assertions because the element isn’t visible
Encounter timing issues with content that loads on scroll
Using the Scroll step ensures that elements are visible and ready for interaction before your next action.
How the step works
With Scroll, you:
Target the element you want to interact with
Instruct the browser to scroll until it is in view
Proceed with actions like Touch, Check Text, Check Value, or others
This makes your automation more reliable because it respects the natural layout and flow of a page.
Combine scrolling with user interactions
Once an element is in view, you can confidently perform:
Touch — click or tap the element
Check Text — assert visible content
Check Value — validate a field
Wait for Element — ensure it is present after dynamic loading
Visual regression — snapshot the visible region
Because the viewport has been adjusted to show exactly what matters, the subsequent steps become more predictable.
Reflect real user behaviour
Scrolling is a normal part of how people use your application. Users rarely wait for an element to magically appear — they scroll until they find what they need.
By including scrolling in your automated flows, you ensure your tests behave like real people, not like rigid scripts that assume everything is already visible.
This improves your coverage and builds confidence that your application works across all real-world scenarios.