Рассмотрим тестирование контракта вашей библиотеки. По сути, синтаксический анализ SAX должен позволять анализировать XML с различными вариантами (управляется конфигурациями). Таким образом, шаблон теста может быть:
public class ParserTest {
@Test
public void testParse() {
// given:
SaxParser underTest = createParser(); // create with configurations
// when:
actualResult = underTest.parseXml(<XML_FILE_GOES_HERE>);
// then:
assertThat(actualResult, matchesContent());
}
}
Вы можете подготовить серию таких тестов, чтобы охватить различные случаи, с которыми должен работать синтаксический анализатор (иерархические теги, атрибуты и т. Д.).
Вы можете рассматривать 2 класса (анализатор и конфигурацию) как один компонент и написать модульный тест, который охватит их оба. Так что в этом случае нет необходимости в mockito (который вы указали в тегах вопроса).
Кроме того, вы можете рассматривать конфигурацию как отдельный компонент и проверять, что она выдает правильную конфигурацию, снова тестировать на поведение контракт.
Относительно утверждений XML. Вы можете найти полезную xml библиотеку единиц