groovy - Geb test intermittent failure firefox - org.openqa.selenium.WebDriverException: Element is not clickable at point -


i getting following error intermittently @ component click in geb ui tests on firefox 45.0.1, selenium 2.53.1 , following jars:

geb-spock-1.1.1.jar

geb-core-1.1.1.jar

geb-ast-1.1.1.jar

geb-waiting-1.1.1.jar

geb-implicit-assertions-1.1.1.jar

geb-exceptions-1.1.1.jar

geb-test-common-1.1.1.jar

spock-spring-1.0-groovy-2.4.jar

spock-core-1.0-groovy-2.4.jar

org.openqa.selenium.webdriverexception: element not clickable @ point (499.95001220703125, 375.6000061035156). other element receive click:

the tests fail intermittently. adding sleep of 200 ms before component click viz. sleep(200) not want use sleep() such fix time values sake of practice.

waitfor() not either:

mybutton(wait:true) {$('#mybtn')} waitfor { mybutton.isdisplayed() } mybutton.click() 

launching tests in full screen not make things better:

def setupspec() {         getdriver().manage().window().maximize()     } 

its element displayed before clickable have seen behaviour clickable elements animate. e.g.

  • page loads
  • button displayed
  • button begins animating
  • button animation finishes
  • button clickable

given intermittent suspect problem related. might not animation related simple race condition.

you add method pageobject or better create custom navigator waits element clickable:

def waitforandclick(navigator element, integer timeoutseconds) {     def timestart = new date().gettime()     while ( timestart <= timestart + timeoutseconds ) {         try {              element.click()         }         catch (webdriverexception ex) {              pass         }         break     } } 

hope helps.


Comments

Popular posts from this blog

Is there a better way to structure post methods in Class Based Views -

performance - Why is XCHG reg, reg a 3 micro-op instruction on modern Intel architectures? -

jquery - Responsive Navbar with Sub Navbar -