Thursday, October 1, 2009

Random Selenium test failures when using Tapestry 4.0

If you're unlucky/crazy enough to still be using Tapestry 4.0 and you see random flameouts from Selenium with messages like

com.thoughtworks.selenium.SeleniumException: Timed out after ...

Then make sure that Tomcat isn't running with

-Dorg.apache.tapestry.disable-caching=true

Turning off Tapestry's caching, although essential for doing rapid in-place changes to .html files, causes huge flakiness. I've seem PermGen space randomly blow out after a few dozen pages get loaded in a Selenium test. I've also seen random internal Tapestry errors if you attempt concurrent page views while disable-caching=true.

For rapid development, you want disable-caching=true, but to speed up your testing you want disable-caching=false. But waitaminute, when you're testing and your tests fail, you often want to make rapid changes to .html files. That sound you hear? It's me slamming my head against my desk.

No comments:

Post a Comment