We have an app I have been testing and my setupSpec() look something like this:
def setupSpec() {
go baseUrl
login "username","password"
at HomePage
}
It goes to a URL of a page but first we need to login, so I do that and then the app goes through a multi factor authentication which my user role skips. During this skip it is basically just a loading screen for usually about 5 seconds, and then it goes to our Home Page.
The HomePage at look like this
static at = {
heading.text().toLowerCase().contains("home page")
}
I have atCheckWaiting = true in my GebConfig.groovy and so far everything has been working just fine. My waiting config is set to 10 seconds with a .5 second retry.
However, we are currently experiencing an issue with our multi factor authentication and it's currently taking about 7-8 minutes to get through that loading screen. I would expect this test to fail after 10 seconds since that is what our default wait timeout is. What I am noticing is that the test fails at 5 minutes. I tried turning off atCheckWaiting and just putting a waitFor in the HomePage at checker, but the same thing is happening regardless of the value I set for the timeout.
It seems that it's a 5 minute timeout and I can't see anywhere to change this. 5 minutes is a long time to wait to fail.
I don't seem to have any issues with the atCheckWaiting outside of the setupSpec()...they seem to be following the global wait rules.
I created an
issue for Geb, because I thought this might be a bug but apparently it's because I am using it wrong? To me it seems to be an issue with how the waits are handled in the setupSpec(), but if I am using it wrong I'd love to know what I am doing wrong.