07.11.2014 Aufrufe

08/2008 - KaffeeKlatsch

08/2008 - KaffeeKlatsch

08/2008 - KaffeeKlatsch

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Verhext!<br />

erbt, welche die Funktionalität eines HttpServlets, und<br />

damit die Klassen WebSession, HttpServletRequest ,<br />

HttpServletResponse und ServletContext, singlethreaded<br />

mockt. Für multi-threaded Tests muss jedoch<br />

ein vollständiger ServletContainer zur Verfügung<br />

stehen.<br />

Für die Ausführung von Prüfungen stellt der Wicket-<br />

Tester eine Reihe von Methoden zur Verfügung, wie<br />

assertRenderedPage, um zu prüfen, ob die korrekte Seite<br />

gerendert wird, assertComponent, ob eine Kompontenklasse<br />

in einem bestimmten Container enthalten ist und<br />

assertVisible, ob eine bestimmte Komponente angezeigt<br />

wird. Derer enthält er noch eine ganze Anzahl weiterer.<br />

Im Folgenden ist ein kurzer Auszug zu sehen, wie die<br />

Struktur eines Tests mit dem WicketTester aufgebaut<br />

sein kann.<br />

public class TestHomePage extends TestCase {<br />

private WicketTester tester;<br />

public void setUp() {<br />

tester = new WicketTester();<br />

}<br />

public void testRenderMyPage() {<br />

tester.startPage(WelcomePage.class);<br />

tester.assertRenderedPage(WelcomePage.class);<br />

tester.assertLabel("pageTitle",<br />

"Music Manager - Willkommen");<br />

}<br />

}<br />

Oberflächen-Tests lassen sich bei Wicket-Anwendungen<br />

mit den allgemein gebräuchlichen Tools durchführen,<br />

wie beispielsweise Selenium [5] oder dem Grinder [6].<br />

Selenium ist ein Tool zum automatisierten Testen<br />

von Web-Anwendungen, wobei sich die Tests über ein<br />

Firefox-Plug-in oder mit der umfangreichen API direkt<br />

erstellen lassen. Der Grinder arbeitet auf der Basis von<br />

Request-Response-Zyklen, die sich aufzeichnen und<br />

dann wieder abspielen lassen. Hierbei werden Abweichungen<br />

vom erwarteten Ergebnis bewertet. Er ist vor<br />

Allem auf Lasttests ausgelegt.<br />

Zu guter Letzt...<br />

Wicket präsentiert sich als leichtgewichtiges Web-<br />

Frame work, das dem Entwickler als Frontend-Einsteiger<br />

schnell und relativ unkompliziert ermöglicht, zu ersten<br />

Ergebnissen zu kommen, und auch dem Frontend-Umsteiger<br />

einen schnellen Einstieg bietet. Vom Entwicklungsgefühl,<br />

das sich bei der Arbeit einstellt, erinnert das<br />

Arbeiten mit Wicket eher an Javas Swing-Entwicklung<br />

als beispielsweise an JavaServer Faces ( JSF) [7].<br />

Zwei besonders angenehme Punkte an Wicket sind die<br />

gelungene Kapselung der Web-Session und die Trennung<br />

des HTML-Seitenaufbaus von der Java-Implementierung.<br />

Der HTML-Anteil einer Wicket-Anwendung<br />

präsentiert sich als (fast) reines HTML, was es auch ermöglicht,<br />

HTML-Designer mit der Gestaltung der Seiten<br />

zu beauftragen.<br />

Allerdings muss deutlich gemacht werden, dass komplexere<br />

Anforderungen, wie z. B. der Aufbau von dynamischen<br />

Tabellen aus komplexen Datenobjekten inklusive<br />

zeilenweiser Eingabemöglichkeiten, dem Entwickler<br />

auch bei Wicket nicht geschenkt werden.<br />

Zudem ist die Skalierbarkeit von Wicket-Anwendungen<br />

nicht in dem Maße erprobt wie bei anderen<br />

Web-Frameworks, beispielsweise dem bereits erwähnten<br />

JSF. Der vorhandene Baukasten für Wicket-Komponenten<br />

hat noch nicht die Reife und den Umfang erreicht<br />

wie bei anderen Webframeworks.<br />

Da Wicket dennoch einige vielversprechende Ansätze<br />

mit sich bringt, sind die beiden Autoren in dieser<br />

Hinsicht jedoch optimistisch.<br />

Referenzen<br />

[1] StarWars.com Warrick, Wicket W.,<br />

http://www.starwars.com/databank/character/wicketwwarrick<br />

[2] Apache.org Apache Wicket, http://wicket.apache.org<br />

[3] Apache.org Apache Maven Project, http://maven.apache.org<br />

[4] Laughing Panda Wicket Bench,<br />

http://www.laughingpanda.org/mediawiki/index.php/Wicket_Bench<br />

[5] OpenQA Selenium web application test system, http://selenium.openqa.org<br />

[6] SourceForge.net The Grinder, a Java Load Testing Framework,<br />

http://grinder.sourceforge.net<br />

[7] Sun Microsystems JavaServer Faces Technology,<br />

http://java.sun.com/javaee/javaserverfaces<br />

Weiterführende Literatur<br />

• Gurumurthy, Karthik Pro Wicket, Apress, 2006<br />

• Ka Iok Tong, Kent Enjoying Web Development with Wicket,<br />

BookSurge Publishing, 20<strong>08</strong> Kurzbiographie<br />

Isabella Kneissl (<br />

) ist als Software-<br />

Entwicklerin und Trainerin für die MATHEMA Software GmbH<br />

tätig. Ihre Themenschwerpunkte umfassen die Software-Entwicklung<br />

unter Java, speziell komponentenbasierte Java-Anwendungen.<br />

Neben ihrer Projekttätigkeit hält sie Technologie-Trainings für die Kunden der<br />

MATHEMA und befasst sich stets mit den Neuerungen im Java-Umfeld.<br />

Kurzbiographie<br />

Matthias Göttler (<br />

) ist Diplom-<br />

Wirtschaftsinformatiker und als Software-Entwickler, Trainer und<br />

Consultant bei der MATHEMA Software GmbH angestellt. Dabei<br />

beschäftigt er sich besonders gerne mit der Performanz von Java-<br />

Applikationen.<br />

Copyright © 20<strong>08</strong> Bookware 1865-682x/<strong>08</strong>/<strong>08</strong>/001 Von diesem <strong>KaffeeKlatsch</strong>-<br />

Artikel dürfen nur dann gedruckte oder digitale Kopien im Ganzen oder in Teilen gemacht<br />

werden, wenn deren Nutzung ausschließlich privaten oder schulischen Zwecken<br />

dient. Des Weiteren dürfen jene nur dann für nicht-kommerzielle Zwecke kopiert , verteilt<br />

oder ver trieben werden, wenn diese Notiz und die vollständigen Artikel angaben<br />

der ersten Seite (Ausgabe, Autor, Titel, Untertitel) erhalten bleiben. Jede andere<br />

Art der Vervielfältigung – ins besondere die Publikation auf Servern und die Verteilung<br />

über Listen – erfordert eine spezielle Genehmigung und ist möglicherweise mit<br />

Gebühren verbunden.<br />

Seite 10 <strong>KaffeeKlatsch</strong> Jahrgang 1 / Nr. 8 / August 20<strong>08</strong>

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!