QA: Avoid flakiness in various test steps due to race conditions
UI testing suffers from race conditions which are being exposed by
our @integration tests which run much faster than beta labs or locally
In https://bocoup.com/weblog/a-day-at-the-races/ one of the techniques
discussed to avoid this is "Know what you’re waiting for."
This checks the UI for the presence of the login form before running
assertions which may fail due to being not having loaded the login page.
I'm not 100% sure why we are getting these failures, but in general being
clearer about what we are expecting makes our tests better