Unit Testing and Automated Testing Questions

Tags: iTexttestingUnit testsiText 5

I have been searching for some unit tests for the program iText with no luck. Is anyone aware of any such tests? Also, does anyone know if the developers use any automatic testing tools on iText, such as Jenkins?

Posted on StackOverflow on Feb 21, 2014 by user3338813

Internally, we use Jenkins as well as TeamCity.

We have two types of tests:

  1. The tests that are added when new core functionality is added. You can find these where Maven expects them: each Maven project has a src directory with 2 sub directories: main and test. For instance: if you look at iText core, you'll find the released stuff here and the tests here. Most of these tests are built on top of our testutils.
  2. The tests that are added when we get questions on SO or when we create code samples for the books. For these we use a generic test classes such as GenericTest and SandboxSampleWrapper. The wrapper class makes creating a test a no-brainer. All you need to do to turn a sample into a test is adding the @WrapToTest annotation. Well, actually there's more involved: you need to follow a specific pattern when writing a sample: always use SRC and DEST for source PDFs and resulting PDFs, always use a createPdf() or manipulatePdf() method, and always give the cmp file the same name as the DEST file prefixed with cmp_.

In both cases, you'll find PDF files of which the name starts with cmp_, see for instance the cmpfiles folder for the examples. In both cases, you'll find references to Ghostscript and a compare tool (you'll need to configure these).