Ich habe einige Code, der die Swing/AWT-Druckfunktionalität verwendet, die ich Unit-Test möchten. Es verwendet das systemeigene Druckdialogfeld, aber gibt es eine Möglichkeit, die JVM dazu zu bringen, das abzufangen und während des Unit-Tests durch eine Attrappe zu ersetzen, so dass ich eine Kopie des Bildes erhalten kann, das gedruckt werden würde?
Mein Code zum Drucken ist einfach und sieht ungefähr so aus:
Printable printable = getPrintable();
PrinterJob printJob = PrinterJob.getPrinterJob();
printJob.setPrintable(printable);
if (printJob.printDialog())
{
try
{
printJob.print();
}
catch (PrinterException exception)
{
...
}
}
Ich habe FEST für meine anderen GUI-Tests verwendet, aber es scheint keine Unterstützung für das Drucken von Tests zu bieten. Ist dies überhaupt möglich, oder muss ich eine Testdokumentation erstellen, in der die QA aufgefordert wird, ihren Drucker zu überprüfen?