Библиотека выдает AssertionError, что приводит к сбою моих тестов

Я работал над созданием модульного теста для моего Java-проекта, и мой тест продолжает проваливаться, даже если я не делал никаких утверждений.

После прочтения трассировки стека, я заметил, что метод в библиотеке retsIQ, которую я использую, выдает ошибку подтверждения. Могу ли я в любом случае игнорировать это? Я бы предпочел не декомпилировать и не перекомпилировать модуль.

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

Вот фотография моего теста:Модульный тест

Вот изображение того, что оно не работает в тесте:введите описание изображения здесь

2 ответа

Я предполагаю две вещи: 1) ваш проект основан на maven; 2) эти два фрагмента кода абсолютно одинаковы (за исключением assertTrue(true); линия, которая ничего не делает, кстати).

Возможно, ваша проблема вызвана тем фактом, что конфигурации "run" и "test" имеют разные пути к классам. У вас может быть неправильная версия какой-либо библиотеки в тестовом пути к классам или даже пропущена какая-то библиотека, что в итоге приводит к этому исключению.

Я предлагаю вам еще раз проверить все тестовые зависимости в pom.xml. Вы также можете распечатать дерево зависимостей проекта, используя плагин Maven Dependency Plugin (но я не уверен, что он может печатать тестовые зависимости отдельно):

mvn dependency:tree -Dverbose

В качестве альтернативы вы можете перейти на вкладку "Структура проекта" > "Модули" > "Зависимости" в Intellij Idea и просмотреть все записи с областью "Тест".

По трассировке стека, похоже, что при анализе ответа обнаружены непредвиденные данные. Лучший способ диагностировать проблему - установить точку останова в SearchCompactReader.parse() (около строки 16) и запустите тест в отладчике.

Кстати, ваш тест не является модульным тестом. Модульный тест проверяет отдельный класс или метод изолированно. Ваш тест, кажется, поражает живой сервер.

Другие вопросы по тегам