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

Android Discussion :

Tests unitaires sur un service Android


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    178
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 178
    Par défaut Tests unitaires sur un service Android
    Bonjour,

    Je souhaite réaliser des tests unitaires sur mon application en développement. Pour faire cela, j'utilise la librairie JUnit4. Jusqu'à aujourd'hui, je n'ai eu aucun problème pour réaliser mes tests sur les modèles données et autres.

    Maintenant, j'aimerai pouvoir réaliser des tests unitaires sur un service android que j'ai mis en place. Pour cela, j'étends ma classe de test avec "ServiceTestCase". Le problème est quand je lance mon test, celui-ci ne semble pas être appelé. Les seuls appelles faits sont "testServiceTestCaseSetUpProperly" qui est une méthode que je n'ai pas rajouté.

    Est ce quelqu'un serait-il comment utiliser ce type de test ou aurait un exemple d'utilisation qui fonctionne ?

    Cordialement,
    Jerem721

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Tu veux dire que les fonctions "testXXXX" ne sont pas appelées ?

    Il est possible de voir le code du TestCase ?

  3. #3
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    178
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 178
    Par défaut
    Oui, bien sur. J'ai fait quelque chose de très simple pour voir comment ça fonctionnait déjà.

    Oui mes méthodes TextXXXX ne sont pas appelées. Je pense que j'ai du oublier quelque chose. Sur la documentation Android, google parle d'utiliser MockApplication, mais je comprends pas bien à quoi ça sert. Et j'arrive pas à trouver d'exemple d'implémentation sur internet.


    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
     
    /**
     * Created with IntelliJ IDEA.
     */
    public class BasicServiceTest extends ServiceTestCase {
     
        private Intent      intent;
     
        public BasicServiceTest(){
            super(BasicServiceTest.class);
        }
     
        @Override
        public void setUp() throws Exception {
            super.setUp();
            intent = new Intent(getContext(), BasicService.class);
        }
     
        @Override
        public void tearDown() throws Exception {
            super.tearDown();
        }
     
        @Test
        public void StartServiceTest() throws Exception{
            startService(intent);
        }
     
        @Test
        public void BindServiceTest() throws Exception{
            IBinder binder;
     
            binder = bindService(intent);
            assertNotNull(binder);
        }
     
    }

  4. #4
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    1. On est en Java: StartServiceTest() devrait s'appeler "startServiceTest()"

    2. On est sous JUnit, une fonction de test doit donc bien *commencer* par "test" (http://junit.sourceforge.net/junit3..../TestCase.html)


    Donc ici la fonction doit s'appeler "testStartService()"

  5. #5
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    178
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 178
    Par défaut
    En effet pour la majuscule je reconnais ma faute , merci.

    Par contre pour le "startServiceTest()", intelliJ me les génèrent tous sous cette forme donc je ne savais pas.

    Ça pourrait venir de ça mon problème ?

  6. #6
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Remarque : Android ne supporte pas JUnit 4, mais JUnit 3.
    Citation Envoyé par [url=https://developer.android.com/tools/testing/testing_android.html#JUnit]Source[/url]
    Note that the Android testing API supports JUnit 3 code style, but not JUnit 4.
    C'est bizarre qu'IDEA te propose de les créer en xxxxxTest. De mon coté, il génère des testXxxxxx. Je vérifierai quand j'arriverai au boulot.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

Discussions similaires

  1. Réponses: 4
    Dernier message: 03/07/2009, 19h06
  2. Test unitaire sur les vue d'une base de données
    Par bragon dans le forum Tests et Performance
    Réponses: 4
    Dernier message: 04/02/2009, 12h29
  3. Test unitaire sur IHM
    Par Tsunamis dans le forum Visual C++
    Réponses: 0
    Dernier message: 04/12/2008, 14h26
  4. Test unitaire sur une servlet
    Par ReaM dans le forum Tests et Performance
    Réponses: 3
    Dernier message: 12/08/2008, 12h08
  5. Tests unitaires sur un ETL
    Par ygrim dans le forum Approche théorique du décisionnel
    Réponses: 2
    Dernier message: 11/06/2008, 14h41

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