12. März 2015 | 2 min lesezeit

Configuration files on demand – ShrinkWraps BeansDescriptor

ShrinkWrap ist der einfachste Weg, um in Java Archive zu erstellen und die Kraft hinter dem Arquillian Deployment Mechanismus. Mit ShrinkWrap lassen sich aus einzelnen Klassen, Packages oder Maven Artefakten für jeden Test angepasste JARs, WARs oder EARs bereitstellen. Erweiterungen wie der BeansDescriptor helfen beim Testsetup.

Bei der Entwicklung eines Arquillian-Tests kommt man hin und wieder in die Situation eine Konfigurationsdatei wie die web.xmlbeans.xml oder faces-config.xml für den Test erstellen oder anpassen zu müssen. Was im ersten Moment eher aufwendig klingt, ist in der Praxis gar nicht schwer.

ShrinkWrap bietet mit dem BeansDescriptor eine einfache Möglichkeit die erforderliche Konfigurationsdatei dynamisch für den Test zu erzeugen. Dies kommt einem vor allem beim Test von CDI Interceptoren, Decorators oder Alternatives zu Gute, da diese explizit in der beans.xml aktiviert werden müssen.
Die Anwendung des BeansDescriptor kann in dem nachfolgenden Listing 1 (vgl. Enterprise Kolumne, JavaMagazin 3.2015) betrachtet werden, wo auf diesem Wege ein gemockter Service aktiviert wird. In Zeilen 8 und 9 wird ein CDI Alternative mit Hilfe eines Mock Stereotypes aktiviert und in Zeile 15 die beans.xml in das WAR File generiert.

Listing 1:

Des Weiteren ist es mit dem BeansDescriptor auch möglich eine bestehende Konfigurationsdatei für den Test zu modifizieren. Hierzu muss diese lediglich geladen werden (Listing 2). Die Liste der unterstützten Konfigurationsdateien kann in der JavaDoc nachgelesen werden.

Listing 2:

Während ShrinkWrap über Arquillian bereits geladen wird, muss für den BeansDescriptor eine zusätzliche Abhängigkeit hinzugefügt werden (Listing 3).

Listing 3:


Keine Kommentare

Kontakt

OPEN KNOWLEDGE GmbH

Standort Oldenburg:
Poststraße 1, 26122 Oldenburg

Standort Essen:
II. Hagen 7, 45127 Essen