tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kalle Korhonen <kalle.o.korho...@gmail.com>
Subject Re: JS changes merged to master branch
Date Tue, 18 Dec 2012 02:51:55 GMT
On Mon, Dec 17, 2012 at 6:26 PM, Howard Lewis Ship <hlship@gmail.com> wrote:

> I'm having dinner with Luke this week, perhaps you can send me more issues
> and I can discuss those with him?
>

Luke who? (Skywalker?) Our Geb tests randomly fail with:

org.openqa.selenium.NoSuchElementException: Unable to locate element:
{"method":"tag name","selector":"html"}
Command duration or timeout: 985 milliseconds
For documentation on this error, please visit:
http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.25.0', revision: '17482', time: '2012-07-18 22:18:01'
System info: os.name: 'Linux', os.arch: 'amd64', os.version:
'3.2.9-2.fc16.x86_64', java.version: '1.6.0_35'
Driver info: driver.version: RemoteWebDriver
Session ID: f266610c-15e8-48e5-914c-ebaf252ab34d
	at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:188)
	at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145)
	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:498)
	at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:268)
	at org.openqa.selenium.remote.RemoteWebDriver.findElementByTagName(RemoteWebDriver.java:321)
	at org.openqa.selenium.By$ByTagName.findElement(By.java:319)
	at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:260)
	at geb.navigator.factory.BrowserBackedNavigatorFactory.getBase(BrowserBackedNavigatorFactory.groovy:33)
	at geb.content.NavigableSupport.getNavigator(NavigableSupport.groovy:39)
	at geb.content.NavigableSupport.$(NavigableSupport.groovy:56)
	at geb.content.PageContentTemplateFactoryDelegate.module(PageContentTemplateFactoryDelegate.groovy:70)
	at geb.content.PageContentTemplateFactoryDelegate.module(PageContentTemplateFactoryDelegate.groovy:42)
	at com.channelmouth.vuact.website.pages.base.LayoutPage._clinit__closure2_closure4(LayoutPage.groovy:18)
	at com.channelmouth.vuact.website.pages.base.LayoutPage._clinit__closure2_closure4(LayoutPage.groovy)
	at geb.content.PageContentTemplate.invokeFactory(PageContentTemplate.groovy:97)
	at geb.content.PageContentTemplate.create_closure1(PageContentTemplate.groovy:59)
	at geb.content.PageContentTemplate.create_closure1(PageContentTemplate.groovy)
	at geb.content.PageContentTemplate.create(PageContentTemplate.groovy:82)
	at geb.content.PageContentTemplate.get(PageContentTemplate.groovy:54)
	at geb.content.NavigableSupport.getContent(NavigableSupport.groovy:45)
	at geb.content.NavigableSupport.propertyMissing(NavigableSupport.groovy:129)
	at geb.Browser.propertyMissing(Browser.groovy:202)
	at geb.spock.GebSpec.propertyMissing(GebSpec.groovy:55)

It looks like a Selenium problem more than a Geb one, Google finds a lot of
hits with the same issue. We keep updating all dependencies to the latest
available and it used to be far worse. Obviously it has something to do
with with page and test structure as well but it appears semi randomly in
multiple different tests and purely increasing timeouts or restructuring
tests doesn't help (although it may alleviate issues in some case). It's a
bit too grey world of testing to my liking.

Kalle


On Mon, Dec 17, 2012 at 4:52 PM, Josh Canfield <joshcanfield@gmail.com
> >wrote:
>
> > I gave up on Geb for the moment because it was really really slow when
> > trying to get values from the page. The jQuery-like DSL seems to prefer
> > being pretty over being performant... I ended up having to inject actual
> > jquery into the page.
> >
> >
> >
> http://markmail.org/message/cwvyuhuqtewxz3d4#query:+page:1+mid:2cbmqh46p4apz3lm+state:results
> >
> > That wasn't exactly my problem, but the same issue if you had too many
> > items in a dropdown etc..
> > Josh
> >
> > On Mon, Dec 17, 2012 at 3:23 AM, Taha Siddiqi <tawus.tapestry@gmail.com
> > >wrote:
> >
> > > Geb is definitely better in some respects.
> > >
> > > 1. Ajax calls are handled better.
> > > 2. The concept of Page is lot easier to maintain and reuse.
> > > 3. Element selection seems natural if you are using jQuery.
> > > 4. Form handling is much better.
> > >
> > > One problem though is that if you have quick zone updates like attached
> > to
> > > keyup event, Geb really gets confused.
> > >
> > > regards
> > > Taha
> > >
> > > On Dec 17, 2012, at 1:58 PM, Lance Java wrote:
> > >
> > > >> Some day, scrap the SeleniumTests and replace with Geb!
> > > > I've found selenium testing to be flaky at best. I'm interested to
> hear
> > > your
> > > > thoughts on what Geb will solve since it uses selenium's WebDriver
> > under
> > > the
> > > > hood. Does Geb have better mechanisms for waiting for the client to
> be
> > > in a
> > > > particular state? With selenium, I sometimes find myself resorting to
> > > > Thread.sleep() which I hate.
> > > >
> > > >
> > > >
> > > > --
> > > > View this message in context:
> > >
> >
> http://tapestry.1045711.n5.nabble.com/JS-changes-merged-to-master-branch-tp5718747p5718772.html
> > > > Sent from the Tapestry - Dev mailing list archive at Nabble.com.
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> > > > For additional commands, e-mail: dev-help@tapestry.apache.org
> > > >
> > >
> > >
> >
>
>
>
> --
> Howard M. Lewis Ship
>
> Creator of Apache Tapestry
>
> The source for Tapestry training, mentoring and support. Contact me to
> learn how I can get you up and productive in Tapestry fast!
>
> (971) 678-5210
> http://howardlewisship.com
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message