Издевающийся конвейер агрегации в тесте SpringBoot завершается с ошибкой «Конвейер агрегации не должен быть нулевым»JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Издевающийся конвейер агрегации в тесте SpringBoot завершается с ошибкой «Конвейер агрегации не должен быть нулевым»

Сообщение Anonymous »

Я работаю над тестированием агрегации MongoDB в сервисном классе Spring Boot. Тестовый класс использует Mockito для имитации операции агрегации, но при запуске теста возникает ошибка. В частности, в сообщении об ошибке говорится: «Конвейер агрегации не должен быть нулевым».

Я использую @SpringBootTest с @MockBean для имитации MongoTemplate. Я также использую Mockito для имитации методаагрегата() в метод setup(). Я имитирую ответ при вызове mongoTemplate.aggregate(...), ожидая, что он вернет список объектов GridIp.
При запуске теста возникает ошибка «Конвейер агрегации не должен быть нулевым», что указывает на то, что конвейер неправильно передан в тест.
Тестируется метод getAllGridIps(). , который создает конвейер агрегации с помощью Aggregation.newAggregation(...), а затем вызывает mongoTemplate.aggregate(...) с помощью этого конвейера.
Тест пишется с использованием JUnit, Mockito и Spring Boot. В проекте используется MongoDB, и я тестирую MongoTemplate для проверки метода агрегирования.
Я пытаюсь. чтобы понять, почему в тесте конвейер агрегации рассматривается как нулевой, несмотря на насмешку над созданием конвейера. Я пропустил какие-либо аннотации или конфигурации? Может ли это быть проблема с тем, как я настраиваю Mockito, или мне нужно над чем-то еще посмеяться?
Что я пробовал:

Я написал тест, используя @SpringBootTest и MockitoAnnotations.openMocks(this), чтобы имитировать mongoTemplate.aggregate(...). Я имитировал конвейер агрегации, используя Aggregation.newAggregation(...), и ожидал, что он вернет имитируемый список объектов GridIp. Я также убедился, что конвейер агрегации в методе службы построен правильно.
Чего я ожидал

Я ожидал, что тест пройдет успешно успешно вернул два объекта GridIp (с заголовками «ip1» и «ip2») из имитируемого конвейера агрегации. Однако тест завершился неудачно с ошибкой «Конвейер агрегации не должен быть нулевым».

Метод getAllGridIps Создание конвейера агрегации в службе Spring Boot
Тестовый класс для насмешливого MongoTemplate с агрегацией в Spring Boot
Журнал ошибок: конвейер агрегации не должен быть нулевым в тесте агрегации GridIp

Подробнее здесь: https://stackoverflow.com/questions/791 ... n-pipeline
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»