Если вы используете @ WebMvcTest для своего теста, это означает, что вы сосредоточены в основном на тестировании пружинного слоя MVC и не углубляетесь в приложение.
Таким образом, эту аннотацию можно использовать только тогда, когда тест фокусируется на компонентах Spring MVC . По умолчанию тесты, аннотированные @WebMvcTest, также автоматически настраивают Spring Security и MockMvc(включает поддержку HtmlUnit WebClient и Selenium WebDriver).Для более детального управления MockMVC можно использовать аннотацию @AutoConfigureMockMvc. Обычно @ WebMvcTest используется в сочетании с @ MockBean или @ Import для создания коллабораторов, необходимых для ваших @ Controller bean-компонентов.
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
@Configuration
@Import({ CustomerConfig.class, SchedulerConfig.class })
public class AppConfig {
}
Затем вы можете импортировать эту конфигурациюкласс, использующий @import
в аннотированном тестовом классе @WebMvcTest
, и бобы должны быть подобраны весной.
Ссылка: https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/test/autoconfigure/web/servlet/WebMvcTest.html