Behavior-Driving Your Apache Wicket Application: Making the Most of Webdriver and JDave-Wicket
New on 22nd March 2009: Preliminary material is updated! Please try checking out the code and building on your machine.
New on 8th February 2009: Preliminary material now online! Have a look!
How to get good unit and black-box test coverage by expressive, executable specifications on your Apache Wicket application code, with JDave BDD framework and WebDriver functional testing tool.The training is mostly hands-on programming assignments of applying WebDriver and jdave-wicket for testing and adding features to a Wicket application.
Apache Wicket is a top-quality component-oriented web user interface framework for Java. JDave is a powerful Behavior-Driven Development (BDD) framework for those willing to switch Test-Driven Development (TDD) on Java to a higher gear. WebDriver is an excellent functional web testing tool for testing a deployed web application with a real browser. This hands-on training session will teach you how to get good test coverage by expressive, executable specifications on your Wicket code. The trainers have extensive experience on delivering complex, ajaxified real-world applications using these technologies.
First JDave, WebDriver and BDD philosophy will be briefly introduced, then practical examples of jdave-wicket and using jdave and WebDriver with Wicket demonstrated. The bulk of this training session will consist of hands-on programming assignments of applying jdave-wicket and WebDriver for testing and adding features to an existing Wicket application.
For the participants, a good command of Java is required, and knowledge on Apache Wicket and some unit testing or BDD framework for Java (such as JUnit, TestNG, JBehave or JDave). Experience on Wicket, WebDriver, Selenium, jMock and Hamcrest matchers is a plus. Eclipse or IntelliJ IDEA is preferred as an IDE. Participants should have a laptop, but can also work in pairs.
Expertise level (beginner to advanced):
Format and duration (trainings vs. general presentation; half-, full- or two-day workshop, etc.) :
Intended audience and maximum number of participants:
Experienced Java programmers interested in improving their automatic testing / executable specification skills on Apache Wicket. Maximum 30 participants.
Background knowledge expected of the participants:
Good command of Java, knowledge on Apache Wicket and some unit testing or BDD framework (such as JUnit, TestNG, JBehave or JDave). Experience on Wicket, WebDriver, Selenium, jMock and Hamcrest matchers is a plus. Eclipse or IntelliJ IDEA is preferred as an IDE.
Markus Hjort / Reaktor Innovations
Timo Rantalaiho / Reaktor Innovations
Marko Sibakov / Reaktor Innovations
Please contact us at firstname dot lastname at ri dot fi!
Methodology Specialist at Reaktor Innovations, Markus has been in the industry for over nine years with experience from various technologies. Certified Scrum Master with extensive experience on agile methods and a long-time active participant in process improvement wherever he's worked at, Markus kick-started the local Coding Dojo events in Finland back in 2005. He is one of the pioneers of the Finnish agile community, speaks frequently at international conferences, and has years of experience on using Wicket in large scale projects.
Timo Rantalaiho is a senior software designer at Reaktor Innovations, with extensive experience on applying agile methodology and practices in demanding, business-critical, Java-based systems. An Apache Wicket committer and JDave contributor, he's passionate about constantly improving code quality in his projects.
Marko Sibakov is Senior Consultant at Reaktor Innovations. Marko has many years of experience about planning and implementing successful software projects, making heavy use of Wicket and JDave in the last years and lately also of WebDriver. As a Certified Scrum Master Marko's passion is to use Agile methods and best possible engineering practices in every project he does. Right now Marko is working with his team for the Finland Post (Itella).