web-dev-qa-db-fra.com

Les classes de test Spring Boot peuvent-elles réutiliser le contexte d'application pour une exécution de test plus rapide?

@ContextConfiguration L'attribut location n'a pas de sens pour les tests d'intégration Spring Boot. Existe-t-il un autre moyen de réutiliser le contexte d'application sur plusieurs classes de test annotées avec @SpringBootTest?

13
vicusbass

Oui. En fait, c'est un comportement par défaut . Le lien pointe vers les documents Spring Framework, qui sont utilisés par Spring Boot sous le capot.

BTW, le contexte est réutilisé par défaut également lorsque @ContextConfiguration est également utilisé.

11
luboskrnac
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)

L'annotation ci-dessus indique que le contexte complet est chargé et qu'il est utilisé à travers les tests. Cela signifie qu'il n'est chargé qu'une seule fois.

Spring Boot fournit une annotation @SpringBootTest qui peut être utilisée comme alternative à l'annotation standard Spring-test @ContextConfiguration lorsque vous avez besoin des fonctionnalités Spring Boot. L'annotation fonctionne en créant le ApplicationContext utilisé dans vos tests via SpringApplication

3