testdriver/scroll.yaml
version: 6.0.0
steps:
  - prompt: Navigate to https://developer.mozilla.org/en-US/docs/Web/HTML
    commands:
      - command: focus-application
        name: Google Chrome
      - command: press-keys
        keys:
          - ctrl
          - l
      - command: type
        text: https://developer.mozilla.org/en-US/docs/Web/HTML
      - command: press-keys
        keys:
          - enter
  - prompt: scroll down with the mouse 1000 pixels
    commands:
      - command: hover-text
        text: "HTML: HyperText Markup Language"
        description: main heading of the article
        action: click
      - command: scroll
        direction: down
        amount: 1000
  - prompt: assert the page is scrolled
    commands:
      - command: assert
        expect: the page is scrolled down

Description

The scroll command is used to scroll the screen in a specified direction using the mouse wheel. This is useful for navigating through content that extends beyond the visible area.

Arguments

ArgumentTypeDescription
directionstringThe direction to scroll. Available directions are: up, down, left, right.
methodstringThe method to scroll. Available methods are: mouse, keyboard. Defaults to mouse
amountnumber(Optional) Pixels to scroll. If not specified, a default amount of 300 is used.
The amount should only be used when the method is mouse. If the method is keyboard, it is redundant as the action performed is pressing the pageup or pagedown keys.

Example usage

- command: scroll
  direction: down
  method: mouse
  amount: 100

Protips

  • Be sure to focus the application and frame you are trying to scroll before using the command.
  • Use precise amount values to control the scrolling distance for better accuracy in your tests.
  • Combine the scroll command with other commands like hover-text or match-image to interact with elements that are initially off-screen.
  • If you wish to scroll dynamically till a specific text or image appears, use scroll-until-text or scroll-until-image commands.
  • The most reliable way to scroll to the top or bottom of the page is to use the home and end keys:
    # Scroll to the top of the page
    - command: press-keys
      keys:
        - home
    # Scroll to the bottom of the page
    - command: press-keys
      keys:
        - end
    

Gotchas

  • Scrolling too far may cause elements to move out of view. Adjust the amount value as needed.
  • Ensure the application or browser window is in focus when using this command to avoid unexpected behavior.

Notes

  • The scroll command is ideal for navigating through long pages or lists during automated tests.
  • This command supports both vertical and horizontal scrolling for flexible navigation.