Отключить класс конфигурации Spring Security для @WebMvcTest в Spring BootJAVA

Программисты JAVA общаются здесь
Anonymous
Отключить класс конфигурации Spring Security для @WebMvcTest в Spring Boot

Сообщение Anonymous »


Недавно я добавил Spring Security в свой проект Spring Boot, используя следующий класс:

@EnableWebSecurity @EnableGlobalMethodSecurity (prePostEnabled = true) общественный класс MySecurityConfig { } в результате по умолчанию все мои URL-адреса теперь защищены аутентификацией и автоматически сгенерированным паролем.

Проблема в том, что все тесты в классе @WebMvcTest, который я использовал для модульного тестирования контроллера:

@RunWith(SpringRunner.class) @WebMvcTest(SomeController.class) публичный класс SomeControllerTest {...} теперь везде происходят сбои из-за отсутствия авторизации.

Вопрос: могу ли я указать методам @Test игнорировать авторизацию, чтобы они продолжали работать, как раньше?

Как предотвратить выбор класса конфигурации @EnableWebSecurity для определенного класса модульного тестирования @WebMvcTest?

Мне бы хотелось, чтобы уже существующие тесты можно было пройти, а функции аутентификации можно было протестировать отдельно позже.

До сих пор я пытался использовать вложенный класс конфигурации в классе тестирования, чтобы исключить конфигурации безопасности:

@RunWith(SpringRunner.class) @WebMvcTest(SomeController.class) общественный класс SomeControllerTest { @Конфигурация @EnableAutoConfiguration(exclude = { SecurityAutoConfiguration.class}) статический класс ContextConfiguration { } ....} но, похоже, это не работает.

ПРИМЕЧАНИЕ. Я использую Spring Boot 1.5.8

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