On Wed, 2006-08-02 at 10:30 +0300, Ittay Dror wrote: > Hi, > > What frameworks are suitable for automatic testing of wicket applications? > I'm interested in functional, regression and performance tests.
We use wickettester (or something similar) for unit testing the models and listener methods. Then we use Selenium to do functional testing using a real browser. Selenium can be used in two different ways. 1. "FIT-like" html tables to drive testing 2. JUnit like test cases (selenium remote control) Our experience is that html table is good when tests are made by QA person who can't program, but in a big project the tests done this way get really quickly out of date. That's why we prefer to drive tests with JUnit. Wicket bench provides an integration to selenium (http://www.laughingpanda.org/mediawiki/index.php/Launchers). Btw. This is in no way tied to eclipse and allows the tests to be run from command-line too (thus enabling to run the tests using your favorite continuous integration tool). > Is it tricky because of wicket's on-the-fly id generation? A bit yes, for instance see this test (taken from http://svn.sourceforge.net/viewvc/thinglink/trunk/thinglink/src/test/java/org/thinglink/ui_selenium/CreateThinglinkTest.java?revision=1&view=markup) public void testCreateThinglink() { openSelenium(createFactory()); getSelenium().type("title", "My thing"); getSelenium().type("description", "My thing is "); assertTrue(getSelenium().isElementPresent("bench_component_form_newLink")); getSelenium().click("save"); String text = getText(); assertTrue(text.contains("My thing")); } The line assertTrue(getSelenium().isElementPresent("bench_component_form_newLink")); is very sensitive to the way how Wicket generates ids. For instance, our tests all broke when wicket started to use '_'-char as separator. We have on a roadmap to provide a thin wicket specific support layer on top of selenium where we could write the same line as: assertTrue(getSelenium().isElementPresent("form.newLink")); For performance testing I recommend Grinder 3 (http://grinder.sourceforge.net). It is programmers performance testing tool and does not provide any fancy gui. Joni ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user