#java #spring
#java #spring
Вопрос:
У меня есть webAppContextSetup
, с помощью которого я устанавливаю контекст приложения. Некоторые ответы предполагают, что standaloneSetup
у которого есть установщик для добавления моего класса ControllerAdvice.
Я пробовал другие ответы, где некоторые предлагали добавить ComponentScan в конфигурацию тестирования. Однако у меня это не сработало.
Во время отладки теста код не попадает в обработчик. Но когда я проверяю журналы UAT, обработчик попадает.
Может кто-нибудь, пожалуйста, помочь? Я нахожусь на своем мобильном телефоне, поэтому не смог добавить код. Это не приложение для загрузки Spring.
Ответ №1:
Вы пробовали использовать @RunWith(SpringRunner.class)
и @WebMvcTest(*Your class name here.class*)
?
@RunWith(SpringRunner.class)
@WebMvcTest(*Your class name here.class*)
public class ExceptionHandlerIntegrationTest {
....
}
Когда вы запускаете тестовый класс с этими аннотациями, класс должен запускаться через spring boot и автоматически настраивать любые параметры, избегая какой-либо дополнительной настройки (ComponentScan и т.д.).
Это помогло бы, если бы вы прикрепили какой-нибудь исходный код, но я предполагаю, что это могло бы решить вашу проблему, я предполагаю, что вы используете Junit в качестве бегуна для этого, поэтому эти аннотации, скорее всего, не будут работать с другими фреймворками.
Я использовал это для тестирования класса обработчика исключений в моем api, и он отлично сработал. Надеюсь, это поможет!
Комментарии:
1. Это не приложение для загрузки Spring. Я буду прикреплять исходный код.
2. Ах, хорошо, тогда это сложнее, spring, безусловно, упрощает задачу.