Das Hilfsprogramm ExtractJavaScript extrahiert
        JavaScript aus einem PDF-Dokument und erstellt daraus eine Textdatei.  
        Das Kapitel
        3.16: „JavaScript“
        beschreibt, wie die Datei in Tests verwendet werden kann.
      
:: :: Extract JavaScript from a PDF document into a text file. :: @echo off setlocal set CLASSPATH=./lib/aspectj-1.8.7/*;%CLASSPATH% set CLASSPATH=./lib/bouncycastle-jdk15on-153/*;%CLASSPATH% set CLASSPATH=./lib/commons-logging-1.2/*;%CLASSPATH% set CLASSPATH=./lib/pdfbox-2.0.0/*;%CLASSPATH% set CLASSPATH=./lib/pdfunit-2016.05/*;%CLASSPATH% set TOOL=com.pdfunit.tools.ExtractJavaScript set OUT_DIR=./tmp set IN_FILE=javaScriptForFields.pdf set PASSWD= java %TOOL% %IN_FILE% %OUT_DIR% %PASSWD% endlocal
          Die Datei javaScriptForFields.pdf, die schon im vorhergehenden 
          Kapitel 9.4: „Feldeigenschaften nach XML extrahieren“
          als Beispiel herhalten musste, enthält für die Felder nameField, ageField 
          und comment auch JavaScript.
        
Innerhalb des Java-Programms, mit dem das PDF-Dokument erstellt wird, sieht der JavaScript-Code für das Feld „ageField“ so aus:
String scriptCodeCheckAge = "var ageField = this.getField('ageField');" + "ageField.setAction('Validate','checkAge()');" + "" + "function checkAge() {" + " if(event.value < 12) {" + " app.alert('Warning! Applicant\\'s age can not be younger than 12.');" + " event.value = 12;" + " }" + "}" ;
          Die erstellte Datei heißt _javascript_javaScriptForFields.out.txt
          und enthält den folgenden JavaScript-Code:
        
var nameField = this.getField('nameField');nameField.setAction('Keystroke', ...
var ageField = ...;function checkAge() {  if(event.value < 12) {...
var commentField = this.getField('commentField');commentField.setAction(...
Sie können die Datei gerne neu formatieren, damit sie besser lesbar wird. Hinzugefügte Whitespaces beeinflussen einen PDFUnit-Test nicht.