Я использовал мою стандартную систему модульного тестирования с хорошей библиотекой для тестирования вывода. В моем текущем проекте вывод XHTML, и я использую JUnit и xml-unit. В предыдущем проекте вывод был XSL-FO, и я использовал python-unit и xmllib. Это позволяет мне постепенно построить XSLT (используя TDD), выполнив единственную проверку только части вывода. Если вывод - текст, я мог бы сравнить весь результат. Я использовал свое текущее программное обеспечение для модульного тестирования по двум причинам. Во-первых, я был знаком с этим, поэтому было быстрее начать. Во-вторых, было очень легко автоматизировать тестирование со сборкой, если оно уже использовало тип теста, которого ожидала сборка.