Comments 3
Что хуже, любой прописанный mock тоже создаёт новый контекст. Подобный дизайн приводит к тому, что многие делают общий класс для всех интеграционных тестов, который содержит всевозможные моки, и потом наследуются от него.
Очень легко и, имхо, правильно, сразу же с первым интеграционным тестом в проекте закинуть ApplicationContextInitializer, который в первый свой взведёт флаг, а во второй поругается и сделает System.exit(). Главное, чтобы ругался доходчиво.
Иногда это можно обойти с помощью
@Bean
public JavaMailSender javaMailSender() {
return mock(JavaMailSender.class);
}
Тогда в нужном классе вместо
@MockBean
protected JavaMailSender mailSender;
пишем
@Autowired
protected JavaMailSender mailSender;
Sign up to leave a comment.
Хватит терять время! Ускоряем сборку с помощью Spring Test Profiler