Проверка класса, создающего Test Anything Protocol (TAP)

Я хочу написать модульный тест для класса, который создает Test Anything Protocol (TAP) через tap4j. Как я могу проверить результат, который внутренне извлекается из TapProducer#dump(TestSet)?

В дополнение к набору предопределенных строк я подумал о чем-то вроде InstantTAP для проверки соответствия спецификации, но локально. Любые предложения по библиотекам, которые я мог бы использовать?


person beatngu13    schedule 25.10.2016    source источник


Ответы (1)


Я как бы решил эту проблему с помощью tap4j Parser, который выбросьте ParserException, если данная строка нарушает спецификацию:

Parser parser = new Tap13Parser( "UTF-8", true, true );
parser.parseTapStream( tapStream );

Эти три параметра: >определяется следующим образом:

  • encoding - Кодировка. Это не будет иметь значения при анализе уже декодированных источников (например, String или Readable), но будет использоваться в методе parseFile(java.io.File) (независимо от того, является ли это правильной кодировкой для анализируемого File).

  • enableSubtests - Включены ли подтесты или нет

  • planRequired - флаг, определяющий, требуется план или нет

Ознакомьтесь с этим вопросом, чтобы узнать, как получить константы для кодировок.

person beatngu13    schedule 26.10.2016