У меня есть этот тестовый класс:
@RunWith(SpringRunner.class)
@WebMvcTest(ClassToBeTested.class)
public class ClassToBeTestedTests {
@Autowired
private MockMvc mockMvc;
@Test
public void simpleTestMethodToGetClassWorking(){
Assert.assertTrue(true);
}
}
но в классе, который я хочу проверить, у меня есть эта строка:
@Autowired
AnnoyingServiceWhichIsADependency annoyingDependency;
Поэтому, когда я пытаюсь запустить тестовый класс - я получаю эту ошибку:
java.lang.IllegalStateException: Failed to load ApplicationContext
и причина за строкой, кажется, подбрасывает это:
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ClassToBeTested': Unsatisfied dependency expressed through field 'AnnoyingServiceWhichIsADependency'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type '<package-path>.AnnoyingServiceWhichIsADependency' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
Я добавлю, что реальный класс работает и выполняет то, для чего он предназначен, но у меня возникают проблемы с его работой в мире модульных тестов.
Вся помощь приветствуется.