Eine Validierung kann sich auf mehrere Dokumente gleichzeitig beziehen, wie das nächste Beispiel zeigt. Ein solcher Test bricht mit dem ersten gefunden Fehler ab.
<testcase name="textInMultipleDocuments"> <assertThatEachDocument> <pdf name="multipleDocuments/document_en.pdf" /> <pdf name="multipleDocuments/document_es.pdf" /> <pdf name="multipleDocuments/document_de.pdf" /> <hasText on="FIRST_PAGE" > <containing>28.09.2014</containing> <containing>XX-123</containing> </hasText> </assertThatEachDocument> </testcase>
Die Testdokumente können auch als URL angegeben werden:
<testcase name="textInMultipleDocuments_AsURL"> <assertThatEachDocument> <pdf name="http://localhost/.../document_en.pdf" isURL="YES" /> <pdf name="http://localhost/.../document_es.pdf" isURL="YES" /> <pdf name="http://localhost/.../document_de.pdf" isURL="YES" /> <hasText on="FIRST_PAGE" > <containing>28.09.2014</containing> <containing>XX-123</containing> </hasText> </assertThatEachDocument> </testcase>
Für die Mengen-Tests stehen fast alle Test-Tags zur Verfügung, die auch für Tests mit einzelnen PDF-Dokumenten existieren. Die folgende Liste zeigt die verfügbaren Tags. Ein Link hinter jedem Tag verweist auf die Beschreibung des jeweiligen Tests.
<!-- Tags to validate a set of PDF documents: --> <containsImage /> 3.6: „Bilder in Dokumenten“ <hasAuthor /> 3.8: „Dokumenteneigenschaften“ <hasBookmark /> 3.17: „Lesezeichen (Bookmarks) und Sprungziele“ <hasBookmarks /> 3.17: „Lesezeichen (Bookmarks) und Sprungziele“ <hasCreationDate /> 3.7: „Datum“ <hasCreationDateAfter /> 3.7: „Datum“ <hasCreationDateBefore /> 3.7: „Datum“ <hasCreator /> 3.7: „Datum“ <hasEmbeddedFile /> 3.3: „Anhänge (Attachments)“ <hasEmbeddedFileContent /> 3.3: „Anhänge (Attachments)“ <hasEncryptionLength /> 3.18: „Passwort“ <hasField /> 3.11: „Formularfelder“ <hasFields /> 3.11: „Formularfelder“ <hasFont /> 3.19: „Schriften“ <hasFonts /> 3.19: „Schriften“ <hasFormat /> 3.10: „Format“ <hasJavaScript /> 3.13: „JavaScript“ <hasKeywords /> 3.8: „Dokumenteneigenschaften“ <hasLayer /> 3.14: „Layer“ <hasLayers /> 3.14: „Layer“ <hasLessPages /> 3.20: „Seitenzahlen als Testziel“ <hasLocale /> 3.22: „Sprachinformation (Language)“ <hasModificationDate /> 3.7: „Datum“ <hasModificationDateAfter /> 3.7: „Datum“ <hasModificationDateBefore /> 3.7: „Datum“ <hasMorePages /> 3.20: „Seitenzahlen als Testziel“ ... continued
... continuation: <hasNoAuthor /> 3.8: „Dokumenteneigenschaften“ <hasNoCreationDate /> 3.7: „Datum“ <hasNoCreator /> 3.8: „Dokumenteneigenschaften“ <hasNoKeywords /> 3.8: „Dokumenteneigenschaften“ <hasNoLocale /> 3.22: „Sprachinformation (Language)“ <hasNoModificationDate /> 3.7: „Datum“ <hasNoProducer /> 3.8: „Dokumenteneigenschaften“ <hasNoProperty /> 3.8: „Dokumenteneigenschaften“ <hasNoSubject /> 3.8: „Dokumenteneigenschaften“ <hasNoText /> 3.23: „Texte“ <hasNoTitle /> 3.8: „Dokumenteneigenschaften“ <hasNoXFAData /> 3.29: „XFA Daten“ <hasNoXMPData /> 3.30: „XMP-Daten“ <hasOwnerPassword /> 3.18: „Passwort“ <hasPermission /> 3.5: „Berechtigungen“ <hasProducer /> 3.8: „Dokumenteneigenschaften“ <hasProperty /> 3.8: „Dokumenteneigenschaften“ <hasSignature /> 3.21: „Signaturen und Zertifikate“ <hasSignatures /> 3.21: „Signaturen und Zertifikate“ <hasSignedSignatureFields /> 3.21: „Signaturen und Zertifikate“ <hasSubject /> 3.8: „Dokumenteneigenschaften“ <hasText /> 3.23: „Texte“ <hasTitle /> 3.8: „Dokumenteneigenschaften“ <hasTrappingInfo /> 3.27: „Trapping-Info“ <hasUnsignedSignatureFields /> 3.21: „Signaturen und Zertifikate“ <hasVersion /> 3.28: „Version“ <hasXFAData /> 3.29: „XFA Daten“ <hasXMPData /> 3.30: „XMP-Daten“ <isCertified /> 3.31: „Zertifiziertes PDF“ <isLinearizedForFastWebView /> 3.9: „Fast Web View“ <isSigned /> 3.21: „Signaturen und Zertifikate“ <isTagged /> 3.26: „Tagging“ ... (end of list)
Wünschen Sie weitere Tests, schreiben Sie Ihren Wunsch an info[at]pdfunit.com.