Skip to main content

Keyboard & Mouse

Keyboard​

CommandDescription
press <key>Press a key (e.g., Enter, ArrowLeft, a)
keydown <key>Press key down
keyup <key>Release key
type <text>Type text key by key into the focused element

Common keys​

Enter, Tab, Escape, Backspace, Delete, Space, ArrowUp, ArrowDown, ArrowLeft, ArrowRight, Home, End, PageUp, PageDown

Key combinations​

playwright-cli press Control+a # select all
playwright-cli press Control+c # copy
playwright-cli press Control+v # paste
playwright-cli press Shift+Tab # focus previous
playwright-cli press Alt+Enter # alt+enter

keydown / keyup hold a modifier across several commands, which press cannot do:

playwright-cli keydown Shift
playwright-cli click e5
playwright-cli click e9 # extends the selection
playwright-cli keyup Shift

To hold modifiers for a single click, click --modifiers is simpler — see Interaction.

Keyboard navigation​

playwright-cli press Tab # next field
playwright-cli press Tab # next field
playwright-cli press ArrowDown # navigate dropdown
playwright-cli press ArrowDown
playwright-cli press Enter # select option

Mouse​

CommandDescription
mousemove <x> <y>Move mouse to coordinates
mousedown [button]Press mouse button (left, right, middle)
mouseup [button]Release mouse button
mousewheel <dx> <dy>Scroll (dx=horizontal, dy=vertical)

Coordinates are viewport-relative CSS pixels. snapshot --boxes reports each element's box in the same coordinate space, which beats reading positions off a screenshot.

# Click at coordinates
playwright-cli mousemove 100 200
playwright-cli mousedown
playwright-cli mouseup

# Right-click
playwright-cli mousemove 300 400
playwright-cli mousedown right
playwright-cli mouseup right

# Scroll down 500 pixels
playwright-cli mousewheel 0 500

# Scroll right 200 pixels
playwright-cli mousewheel 200 0

When to use mouse commands​

ScenarioRecommended approach
Clicking a button, link, or form elementclick, fill, and other ref-based commands
Canvas-based apps (drawing, maps)Mouse commands with coordinates
Custom UI controls without accessibilityMouse commands with coordinates
Drag interactions on pixel-precise targetsMouse commands with coordinates

For most web applications, refs from accessibility snapshots are more reliable than coordinates. Use mouse commands only when the accessibility tree doesn't expose the elements you need.