Skip to content

vibium wait

Wait for an element, URL, text, page load, or JS condition.

vibium wait [selector] [flags]
vibium wait [command]
--state string State to wait for: attached, visible, hidden (default "attached")
--timeout timeout Max time to wait, e.g. 5s or 5000 (bare number = milliseconds) (default 30s)

Wait until a JS expression returns truthy.

vibium wait fn [expression] [flags]
--timeout timeout Max time to wait, e.g. 5s or 5000 (bare number = milliseconds) (default 30s)
Terminal window
vibium wait fn "document.readyState === 'complete'"
# Wait for page to be fully loaded
vibium wait fn "window.ready === true" --timeout 10s
# Wait for custom condition (10s, or 10000 for milliseconds)

Wait until the page is fully loaded.

vibium wait load [flags]
--timeout timeout Max time to wait, e.g. 5s or 5000 (bare number = milliseconds) (default 30s)
Terminal window
vibium wait load
# Wait until document.readyState is "complete"
vibium wait load --timeout 10s
# Wait up to 10 seconds (or 10000 for milliseconds)

Wait until text appears on the page.

vibium wait text [text] [flags]
--timeout timeout Max time to wait, e.g. 5s or 5000 (bare number = milliseconds) (default 30s)
Terminal window
vibium wait text "Welcome"
# Waits until "Welcome" appears on the page
vibium wait text "Success" --timeout 10s
# Wait with custom timeout (10s, or 10000 for milliseconds)

Wait until the page URL contains a substring.

vibium wait url [pattern] [flags]
--timeout timeout Max time to wait, e.g. 5s or 5000 (bare number = milliseconds) (default 30s)
Terminal window
vibium wait url "/dashboard"
# Wait until URL contains "/dashboard"
vibium wait url "success" --timeout 10s
# Wait up to 10 seconds (or 10000 for milliseconds)

wait is how you synchronize with asynchronous browser behavior — navigation, network responses, animation, dynamic re-renders. It blocks until its condition becomes true, then exits successfully. If the condition never becomes true within Vibium’s wait timeout, the command exits with an error.

VariantBecomes true when…
vibium wait "<selector>"An element matching <selector> is on the page.
vibium wait url "<path>"The current URL contains <path>.
vibium wait text "<text>"<text> appears anywhere in the visible page.

Wait for a button to appear:

Terminal window
vibium wait "button.continue"

Wait for a path change:

Terminal window
vibium wait url "/results"

Wait for a result to be rendered:

Terminal window
vibium wait text "Results for"