Waits
All Capybara Node Finders utilize a waiting mechanism.
Per the Capybara API -
If the driver is capable of executing JavaScript,
find
will wait for a set amount of time and continuously retry finding the element until either the element is found or the time expires. The length of time find will wait is controlled throughCapybara.default_max_wait_time
and defaults to2
seconds.find
takes the same options as all.
Ideally the GitLab QA Framework should implement its own explicit waiting to avoid hard sleeps but currently that is not the case.
Hard Sleeps
def wait(max: 60, time: 0.1, reload: true)
...
end
-
max
: Specifies the max amount of seconds to wait until the block given is satisfied -
time
: The interval/poll time to sleep in seconds. If this time reachesmax
, the wait returnsfalse
-
reload
: If the wait is not satiated, the test will sleep then reload the page if:reload
is set totrue