Zurück |  | Weiter

# Kapitel 4. Vergleiche gegen ein Referenz-PDF

## 4.1. Überblick

Viele Tests folgen dem Prinzip, ein einmal getestetes PDF-Dokument als Referenz für neu erstellte Dokumente zu benutzen. Solche Tests sind sinnvoll, wenn Prozesse, die das PDF erstellen, geändert werden, das Ergebnis aber unverändert bleiben soll.

### Initialisierung

Die Instantiierung eines Referenz-Dokumentes erfolgt über die Methode `and(..)`:

    @Test
    public void testInstantiationWithReference() throws Exception {
      String filenameTest = "documentUnderTest.pdf";
      String filenameReference = "reference.pdf";
      String passwordTest = "owner-password";

      AssertThat.document(filenameTest, passwordTest)
                .and(filenameReference)
      ;
    }

| Das Test-Dokument ist verschlüsselt und wird mit dem Passwort geöffnet.
| Das Referenz-Dokument ist hier nicht verschlüsselt. Falls es verschlüsselt wäre, muss das Passwort der Methode `and()` als zweiter Parameter übergeben werden.

Passwörter dienen nur zum Öffnen der Dokumente, die Tests werden von dem Passwort nicht beeinflusst.

### Überblick

Die folgende Liste gibt einen vollständigen Überblick über die vergleichenden Tests von PDFUnit. Links führen zu Kapiteln, die den jeweiligen Test ausführlich beschreiben.

    // Methods to compare two PDF documents:

    .haveSameAccessPermission()           4.3: „Berechtigungen vergleichen“
    .haveSameAccessPermission(..)         4.3: „Berechtigungen vergleichen“
    .haveSameAppearance()                 4.10: „Layout vergleichen (gerenderte Seiten)“
    .haveSameAuthor()                     4.6: „Dokumenteneigenschaften vergleichen“
    .haveSameBookmarks()                  4.11: „Lesezeichen (Bookmarks) vergleichen“
    .haveSameCreationDate()               4.5: „Datumswerte vergleichen“
    .haveSameCreator()                    4.6: „Dokumenteneigenschaften vergleichen“
    .haveSameEmbeddedFiles(..)            4.2: „Anhänge (Attachments) vergleichen“
    .haveSameFieldsByName()               4.8: „Formularfelder vergleichen“
    .haveSameFieldsByValue()              4.8: „Formularfelder vergleichen“
    .haveSameFormat()                     4.7: „Formate vergleichen“
    .haveSameImages()                     4.4: „Bilder vergleichen“
    .haveSameJavaScript()                 4.17: „Sonstige Vergleiche“
    .haveSameKeywords()                   4.17: „Sonstige Vergleiche“
    .haveSameLanguageInfo()               4.17: „Sonstige Vergleiche“
    .haveSameLayerNames()                 4.17: „Sonstige Vergleiche“
    .haveSameModificationDate()           4.5: „Datumswerte vergleichen“
    .haveSameNamedDestinations()          4.12: „"Named Destinations" vergleichen“
    .haveSameNumberOfBookmarks()          4.11: „Lesezeichen (Bookmarks) vergleichen“
    .haveSameNumberOfEmbeddedFiles()      4.2: „Anhänge (Attachments) vergleichen“
    .haveSameNumberOfFields()             4.8: „Formularfelder vergleichen“
    .haveSameNumberOfImages()             4.4: „Bilder vergleichen“
    .haveSameNumberOfLayers()             4.13: „PDF-Bestandteile vergleichen“
    .haveSameNumberOfNamedDestinations()  4.12: „"Named Destinations" vergleichen“
    .haveSameNumberOfPages()              4.13: „PDF-Bestandteile vergleichen“

    ...  continued

    ... continuation:

    .haveSameProducer()                   4.6: „Dokumenteneigenschaften vergleichen“
    .haveSameProperties()                 4.6: „Dokumenteneigenschaften vergleichen“
    .haveSameProperty(..)                 4.6: „Dokumenteneigenschaften vergleichen“
    .haveSameSubject()                    4.6: „Dokumenteneigenschaften vergleichen“
    .haveSameTaggingInfo()                4.17: „Sonstige Vergleiche“
    .haveSameText()                       4.14: „Text vergleichen“
    .haveSameTitle()                      4.6: „Dokumenteneigenschaften vergleichen“
    .haveSameXFAData()                    4.15: „XFA-Daten vergleichen“
    .haveSameXMPData()                    4.16: „XMP-Daten vergleichen“

Zurück |  | Weiter
3.39. ZUGFeRD | Zum Anfang | 4.2. Anhänge (Attachments) vergleichen