Отключить класс конфигурации Spring Security для @WebMvcTest в Spring Boot ⇐ JAVA
Отключить класс конфигурации Spring Security для @WebMvcTest в Spring Boot
Недавно я добавил 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
Недавно я добавил 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
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение