12.6. Überprüfung der Konfiguration

Überprüfung mit Skript

Die Installation von PDFUnit kann mit einem mitgelieferten Programm überprüft werden. Das Programm wird über das Skript verifyInstallation.bat bzw. verifyInstallation.sh gestartet:

::
:: Verify the installation of PDFUnit
::

set CURRENTDIR=%~dp0
set PDFUNIT_HOME=%CURRENTDIR%

::
:: Change the installation directories depending on your situation:
::
set ASPECTJ_HOME=%PDFUNIT_HOME%/lib/aspectj-1.8.7
set BOUNCYCASTLE_HOME=%PDFUNIT_HOME%/lib/bouncycastle-jdk15on-153
set JAVASSIST_HOME=%PDFUNIT_HOME%/lib-ext/javassist-3.20.0-GA
set JUNIT_HOME=%PDFUNIT_HOME%/lib/junit-4.12
set COMMONSCOLLECTIONS_HOME=%PDFUNIT_HOME%/lib/commons-collections4-4.1
set COMMONSLOGGING_HOME=%PDFUNIT_HOME%/lib/commons-logging-1.2
set PDFBOX_HOME=%PDFUNIT_HOME%/lib/pdfbox-2.0.0
set TESS4J_HOME=%PDFUNIT_HOME%/lib/tess4j-3.1.0
set VIP_HOME=%PDFUNIT_HOME%/lib/vip-1.0.0
set ZXING_HOME=%PDFUNIT_HOME%/lib/zxing-core-3.2.1

set CLASSPATH=
set CLASSPATH=%ASPECTJ_HOME%/*;%CLASSPATH%
set CLASSPATH=%BOUNCYCASTLE_HOME%/*;%CLASSPATH%
set CLASSPATH=%COMMONSCOLLECTIONS_HOME%/*;%CLASSPATH%
set CLASSPATH=%COMMONSLOGGING_HOME%/*;%CLASSPATH%
set CLASSPATH=%JAVASSIST_HOME%/*;%CLASSPATH%
set CLASSPATH=%JUNIT_HOME%/*;%CLASSPATH%
set CLASSPATH=%PDFBOX_HOME%/*;%CLASSPATH%
set CLASSPATH=%TESS4J_HOME%/*;%CLASSPATH%
set CLASSPATH=%TESS4J_HOME%/lib/*;%CLASSPATH%
set CLASSPATH=%VIP_HOME%/*;%CLASSPATH%
set CLASSPATH=%ZXING_HOME%/*;%CLASSPATH%

:: The folder of PDFUnit-Java:
set CLASSPATH=%PDFUNIT_HOME%/build_ant/classes;%CLASSPATH%
:: The JAR files of PDFUnit-Java:
set CLASSPATH=%PDFUNIT_HOME%*;%CLASSPATH%


:: Run installation verification:
java org.verifyinstallation.VIPMain  --in   pdfunit_development.vip  
                                     --out  verifyInstallation_result.html
                                     --xslt ./lib/vip-1.0.0/vip-java_simple.xslt 

Passen Sie die Pfade an die Verhältnisse Ihrer Installation an.

Die Stylesheet-Option kann entfallen. Sie dient vor allem dazu, die Verwendung eigener Stylesheets zu ermöglichen.

Das Skript erzeugt folgende Ausgabe auf der Konsole:

Checking installation ...
... finished. Report created, see 'verifyInstallation_result.html'.

Der Report listet einerseits eventuelle Fehler auf und andererseits protokolliert er allgemeine Laufzeitinformationen wie Classpath, Umgebungsvariablen und Dateien:

Überprüfung als Unittest

Die Überprüfung der Installation kann auch als Unittest durchgeführt werden. Dadurch ist es möglich, die Systemumgebung der laufenden Tests im Kontext von ANT, Maven oder Jenkins sichtbar zu machen.

Innerhalb eines Unittests wird dazu diese spezielle Testmethode aufgerufen:

/*
 * The method verifies that all required libraries and files are found on the 
 * classpath. Additionally it logs some system properties and writes 
 * all to System.out.
 */
@Test
public void verifyRequriedFilesAndLibraries() throws Exception {
  AssertThat.installationIsClean("pdfunit_development.vip");
}

Die Methode führt die gleichen Prüfungen aus, wie das zuvor beschriebene Skript. Falls ein Konfigurationsfehler vorliegt, wird der Test rot und verweist in der Fehlermeldung auf die Report-Datei:

Die Report-Datei enthält dieselben Informationen (s.o.), als wäre sie über ein Skript erzeugt worden.