Voici mon cas de test pour un contrôleur Spring
@RunWith(SpringRunner.class)
@WebMvcTest(value = MyController.class)
public class MyControllerTest {
@MockBean
private MyService myService;
}
Il s'agit donc d'un test unitaire spécifique pour les méthodes de MyController. Mais lorsque je lance le test, Spring semble commencer à instancier OtherController et toutes ses dépendances.
J'ai essayé de mettre à jour ce qui précède comme suit
@RunWith(SpringRunner.class)
@WebMvcTest(value = MyController.class, excludeFilters = @ComponentScan.Filter(value= OtherController.class, type = FilterType.ANNOTATION))
public class MyControllerTest {
...
}
Mais Spring semble toujours le câbler. Voici l'erreur lancée par Spring lorsqu'il tente d'instancier OtherController lorsque je lance le test ci-dessus spécifiquement.
2017-01-06 12:09:46.207 WARN 18092 --- [ main] o.s.w.c.s.GenericWebApplicationContext : Exception rencontrée lors de l'initialisation du contexte - tentative d'annulation de l'actualisation : org.springframework.beans.factory.UnsatisfiedDependencyException: Erreur de création du bean avec le nom 'otherController' défini dans le fichier [C:..OtherController.class] : Dépendance non satisfaite exprimée à travers le paramètre 0 du constructeur ; exception imbriquée est org.springframework.beans.factory.UnsatisfiedDependencyException: Erreur de création du bean avec le nom 'getOtherService' défini dans com.my.myApplication: Dépendance non satisfaite exprimée à travers la méthode 'getOtherService' paramètre 0org.springframework.beans.factory.UnsatisfiedDependencyException: Erreur de création du bean avec le nom 'getOtherService' défini dans com.myOrg.MyServiceApplication: Dépendance non satisfaite exprimée à travers la méthode 'getPositionService' paramètre 0
Qu'est-ce qui pourrait causer cela?