IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Java Discussion :

Spring et Jmock : injecter un mock dans un @autowired [Integration]


Sujet :

Spring Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 30
    Points : 27
    Points
    27
    Par défaut Spring et Jmock : injecter un mock dans un @autowired
    Bonjour à tous,

    Actuellement en stage et en découverte du Framework Spring, je dois mettre en place des tests unitaires au sein d'un Progiciel.

    Pour isoler la méthode a tester, j'ai décider d'utiliser des mock ( Jmock), qui simule les objets externe à mon objet testé. Seulement, l'objet que je simule est attribué avec @autowired par spring.

    je ne comprend pas comment l'attribuer à mon objet puisque je n'ai du coup pas de setter.

    Voici la structure actuelle de mon code, tout conseil est la bienvenue. Découvrir les progiciels, spring et les test unitaires d'un coup... j'avoue que j'arrive plus à m'en sortir.





    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public class ClasseAtester implements IclassAtester {
     
     
     
        @Autowired private ADao myDao = null;
     
     public void method1(){
     
      //accés au dao
    }
    Voici ma classe de test :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
     
    public class TestClasseAtester extends TestSpring_Junit4_compatibility
    {
    	private static final String[] context = { 
    		"./metadata/applicationContextTest.xml"};
     
     
    	Mockery mContext = new JUnit4Mockery();
     
        private ClasseAtester tst = null;
     
    	@Before
    	public void initMockery(){
     
    		myDao = mContext.mock(IRfotpeDao.class);
     
    		tst = (ClasseAtester) applicationContext.getBean("IClasseAtester");
     
    	}
     
    	protected String[] getConfigLocations() {		
    		return context;		
    	}
     
    	@Test
    	public void testMethod1()
    	{
    	//code Expectation
    /////....
    /////
            tst.method1();
    //assertIsSatisfied()....
     
    	}
     
    }

    Merci d'avance.

  2. #2
    Membre habitué

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 143
    Points : 157
    Points
    157
    Par défaut
    Regarde les utilisations de cette classe :

    http://static.springsource.org/sprin...TestUtils.html

    Il y a des exemples d'utilisation dans le SVN de Tudu Lists, dans trunk/tudu3 :

    http://fisheye3.atlassian.com/browse...est.java?r=689
    Julien Dubois

    http://www.ippon.fr

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/05/2011, 09h23
  2. [Spring + Struts]Injecter un bean dans un plugin Struts
    Par Saverok dans le forum Spring Web
    Réponses: 1
    Dernier message: 18/12/2008, 15h18
  3. Réponses: 12
    Dernier message: 24/05/2006, 15h37
  4. Traiter et injecter du XML dans du HTML en "live"
    Par narnou dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 22/02/2006, 08h27
  5. [VB.NET] fonction qui injecte du html dans une zone précise
    Par denisvignes dans le forum ASP.NET
    Réponses: 5
    Dernier message: 27/10/2005, 09h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo