Библиотека выдает 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) и запустите тест в отладчике.
Кстати, ваш тест не является модульным тестом. Модульный тест проверяет отдельный класс или метод изолированно. Ваш тест, кажется, поражает живой сервер.