The element reference of...is stale
BrunoMCBraga opened this issue · comments
Hello
I am currently using selenium to automate a login and I am using the following sequence:
userNameElement, err = wd.FindElement(selenium.ByName, "user_name")
if err := wd.Get(loginURL); err != nil {
return errors.New(fmt.Sprintf("... failed on wd.FindElement #username with error: %s", err.Error()))
}
if err := userNameElement.Clear(); err != nil {
return errors.New(fmt.Sprintf("...failed on elem.Clear with error: %s", err.Error()))
}
I keep getting the same error and the browser crashes. The error is on the description.
I have found this stale error on stackoverflow posts and with the Pythin version of selenium it is possible to ignore this type of error or at least use a Wait to wait until the form is loaded.
There is no way for me to block this exceptions according to the source code and I have no idea how to handle this error. I have tried sleep and wait but the error keeps triggering again.
Thanks
Think you should swap the order of Get()
and FindElement()
- Get
will instruct the browser to load the page, so whatever element reference you got before Get()
is guaranteed to be invalid.