Avoid excessive waits while checking if logged in
What does this MR do and why?
The use of has_element?
without a defined wait period causes a 10sec wait if the element doesn't exist.
In our current usage, we sometimes check this defensively, which does lead to extra sleep time being added to a number of E2E that use this flow.
e.g. job 4214562382/job 4214562398 shows 6 cases of Potentially Slow Code 'has_element? sign_in_tab'
each taking 11s meaning we could save over a minute of total execution time for the suite.
Let's tidy this up to avoid the additional waits.
How to set up and validate locally
cd /path/to/gdk/gitlab/qa
bundle exec rspec
- Check job logs for cases of
Potentially Slow Code 'has_element? sign_in_tab'
in jobs throughout suite. Should not occur after this change.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by John McDonnell