J'ai deux cartes qui ont les mêmes arguments. Je voudrais se moquer d'un d'entre eux pour tester ma classe. Mais je ne sais pas une raison pour laquelle il ne fonctionne pas
Ceci est ma classe p> et c'est ma classe de test: p>
3 Réponses :
Avant de sauter dans la maquette de la carte, est-ce nécessaire pour se moquer d'une carte? Mock est utilisé pour remplacer une autre partie de votre code que vous ne souhaitez pas être impliqués dans votre test de l'unité. Tandis que la carte est suffisamment facile pour initier un test d'unité. P>
Vous avez besoin du même nom et de même type dans les deux classes:
//main class private HashMap<String, Foo> map; //test class @Mock private HashMap<String, Foo> map;
# 3 est probablement la voie pour vous. Essayez ce qui suit: p>
Partager plus de pièces pour le code pour une réponse plus précise. P> @InjectMocks code> essaie d'injecter les dépendances de la manière suivante p>
MAPTEST code> à
MAP1 CODE> dans votre classe de test. LI>
map2 code> de la même manière. li>
Vous essayez de vous moquer de l'état interne d'un objet.
PowerMock code> fournit une telle fonctionnalité. Voir cette réponse à Question similaire
Ce projet de printemps est-il?