Dieses Kapitel beschreibt die Einbindung von checkerberry db in die Umgebung des Kunden. Die Installation besteht aus den folgenden Schritten
Einbinden der erforderlichen Bibliotheken
Implementierung der konkreten checkerberry db-Bridge
Erzeugen der checkerberry db-Umgebung.
Die Implementierung der checkerberry db-Bridge ist abhängig von der Kundenumgebung und nimmt bei der Installation den größten Aufwand in Anspruch. Dieser Aufwand muss jedoch nur einmalig betrieben werden. Nach der erfolgreichen Integration von checkerberry db werden die Ergebnisse in der Versionsverwaltung gespeichert und stehen dann jedem Entwickler zur Verfügung.
Die nächsten Kapitel beschreiben die erforderlichen Schritte in der Reihenfolge ihrer Durchführung.
Dieses Kapitel beschreibt, wie checkerberry db in ein konkretes Projekt eingebunden werden kann. Abschnitt 2.5.1.1 behandelt die Einbindung über Maven und die Abschnitte 2.5.1.2 und ??? das direkte Einbinden der Bibliotheken.
Das Einbinden der Bibliotheken über Maven ist deutlich einfacher als das direkte Einbinden der Bibliotheken. Maven verwaltet die Abhängigkeiten der verschiedenen Bibliotheken und lädt fehlende Bibliotheken bei Bedarf nach.
Zur Einbindung von checkerberry db in ein Maven-Projekt müssen
die Abhängigkeiten in der Maven-Konfiguration (
pom.xml
) eingetragen werden. Folgendes
Code-Beispiel zeigt die erforderlichen Einträge:
Beispiel 2.62. Erforderliche Maven-Abhängigkeiten von checkerberry db
<dependencies> … <dependency> <groupId>de.conceptpeople.checkerberry</groupId> <artifactId>checkerberry-db</artifactId> <version>3.2.x</version> <scope>test</scope> </dependency> … <dependencies>
Durch die Angabe von checkerberry db werden ebenfalls alle
abhängigen Bibliotheken in das Projekt eingebunden. Der Scope
test
besagt, dass die Bibliothek und alle
abhängigen Bibliotheken nur für die Testdurchführung benötigt
werden.
Bei der Verwendung von Spring, Hibernate und ggf. JPA kann die
Abhängigkeit zur konkreten Bridge-Implementierung eingefügt werden.
Alternativ kann eine eigene Bridge-Implementierung eingefügt werden.
Das folgende Code-Beispiel zeigt wie die Abhängigkeiten in der
pom.xml
eingetragen werden müssen.
Beispiel 2.63. Optionale Maven-Abhängigkeiten auf die Basis-Bridge-Implementierung
<dependencies> … <dependency> <groupId>de.conceptpeople.checkerberry</groupId> <!-- Verwende entweder die Spring-/Hibernate-Bridge… --> <artifactId>checkerberry-db-spring3-bridge</artifactId> <!-- …oder die Spring/JPA/Hibernate-Bridge. --> <artifactId>checkerberry-db-spring-jpa-bridge</artifactId> <version>3.2.x</version> <scope>test</scope> </dependency> … <dependencies>
Die Maven-Artefakte des checkerberry test center können über das öffentliche checkerberry Maven-Repository geladen werden (siehe Abschnitt 1.4, „Checkerberry Maven-Repository“).
Damit ist die Einbindung von checkerberry db beendet. Der nächste Schritt zum Aufsetzen einer lauffähigen checkerberry db-Umgebung ist das Implementieren der checkerberry db-Bridge, welches in Abschnitt 2.5.2, „Implementierung der konkreten checkerberry-db-Bridge“ beschrieben wird. Der Rest dieses Kapitels beschäftigt sich mit der direkten Einbindung der Bibliotheken.
Die folgende Tabelle enthält alle checkerberry db-Bibliotheken.
Tabelle 2.6. Bibliotheken von checkerberry db
checkerberry-db-common-3.2.x.jar | Allgemeine Klassen für die verschiedenen Projekte von checkerberry db |
checkerberry-db-3.2.x.jar | Kern-Komponenten von checkerberry db. |
checkerberry-db-bridge-3.2.x.jar | Schnittstelle der checkerberry-db-Bridge |
checkerberry-db-spring3-bridge-3.2.x.jar | Optionale Basis-Implementation der Spring/Hibernate-Bridge. |
checkerberry-db-spring4-bridge-3.2.x.jar | Optionale Basis-Implementation der Spring/Hibernate-Bridge ab Spring-Version 4. |
checkerberry-db-spring-jpa-bridge-3.2.x.jar | Optionale Basis-Implementation der Spring/JPA/Hibernate-Bridge. |
checkerberry-main-3.2.x.pom | Enthält als Eltern-Projekt aller checkerberry-Projekte wichtige Maven-Einstellungen. |
checkerberry-common-3.2.x.jar | Allgemeine Klassen für alle checkerberry-Projekte |
checkerberry-test-connector-3.2.x.jar | Schnittstelle für die Abstraktion des zu verwendendes Testframeworks. |
checkerberry-test-connector-switch-3.2.x.jar | Ermittelt das aktuelle Testframework und bindet die konkrete Instanz des Test-Connectors ein. |
checkerberry-junit3-connector-3.2.x.jar | Klassen für die Verwendung von JUnit3. Diese Bibliothek wird automatisch von dem Test-Connector-Switch eingebunden. |
checkerberry-junit4-connector-3.2.x.jar | Klassen für die Verwendung von JUnit4. Diese Bibliothek wird automatisch von dem Test-Connector-Switch eingebunden. |
checkerberry-testng-connector-3.2.x.jar | Klassen für die Verwendung von TestNG. Diese Bibliothek wird automatisch von dem Test-Connector-Switch eingebunden. |
checkerberry-spring-integration-3.2.x.jar | Klassen für die vereinfachte Verwendung des Springframeworks. |
checkerberry-spring4-integration-3.2.x.jar | Klassen für die vereinfachte Verwendung des Springframeworks ab Spring-Version 4. |
Zur Verwendung von checkerberry db sind folgende Bibliotheken
zwingend erforderlich: checkerberry-common-3.2.x.jar
,
checkerberry-test-connector-3.2.x.jar
,
checkerberry-test-connector-switch-3.2.x.jar
,
checkerberry-db-common-3.2.x.jar
,
checkerberry-db-bridge-3.2.x.jar
,
checkerberry-db-3.2.x.jar
,
checkerberry-junit3-connector-3.2.x.jar
,
checkerberry-junit4-connector-3.2.x.jar
und checkerberry-testng-connector-3.2.x.jar
.
Bei der Verwendung von Spring und Hibernate kann die konkrete
Bridge-Implementierung
checkerberry-db-hibernate-bridge-3.2.x.jar
eingefügt werden. Wird zusätzlich die JPA verwendet, kann die
JAR-Datei checkerberry-db-jpa-bridge-3.2.x.jar
eingefügt werden. Alternativ kann eine eigene Bridge-Implementierung
eingefügt werden.