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

C++ Discussion :

Tester une librairie statique


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 37
    Par défaut Tester une librairie statique
    Bonjour a tous,

    Je développe une librairie statique sous linux.
    Ma question est la suivante, comment réaliser mes tests unitaire et tests d'intégration?
    Étant une librairie, mon projet n'a pas de main ni ne produit d'exécutable.
    De plus, pour réaliser les tests de bas niveau, des appelles a des fonctions private ou protected sont requis, mais impossible.

    Qu'elle sont les bonnes pratiques dans ce cas la?
    Mettre toutes les fonctions en publique pendant les test me parait sur-réalistes,
    créer une classe friend a toutes les autres classes aussi.
    Quelqu'un a t'il de l'expérience ou des idées?

    Merci.

  2. #2
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 37
    Par défaut
    Pas d'idées

    Je vais essayer la technique je passe toute mes méthodes en public pour les tests.
    Mais je suis sur qu'il y a des solutions beaucoup plus élégantes.

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 294
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 294
    Par défaut
    Salut,

    D'expérience si tu as besoin d'accéder à des parties privées (par définition des "détails d'implémentation" donc) pour écrire les tests c'est soit que la classe est trop grosse, soit que les tests ne devraient tout simplement pas tester ça.
    Le but d'un test unitaire est de vérifier qu'un module (souvent vu comme une classe même si c'est un peu rapide) en isolation fonctionne correctement, donc qu'il réagit comme il se doit aux sollicitations qu'on lui applique.

    MAT.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 224
    Par défaut
    boost::test marche pas trop mal pour te faire des tests unitaires.

    Ensuite comme le disait Mat007, logiquement tu ne dois tester que les fonctions publiques car ce sont elles qui vont être utilisées.

    Sinon une autre possibilité, tu crées une fonction TestMe dans chaque classe qui lance sa propre série de test sur cette classe, comme ca tu as acces au membre publique et privé.

    Mais j éviterais de tout passé en publique juste pour le test.

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    780
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 780
    Par défaut
    tu as cppunit aussi.

    Eh oui, normalement tu n'as besoin de tester que l'interface de ta classe.

  6. #6
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 37
    Par défaut
    Je pense aussi que Mat007 voit juste (après avoir lu le chapitre un de l'excellent tic++ ici).
    Comme l'auteur le recommande (XP), je pense que je vais écrire les test de mes classes avant de les implémenter, et après les laisses dans mes sources.

    Pour les plateformes de tests, je vais faire sans et suivre mes strictes besoins (avancer dans le code au plus vite).

    Merci pour toutes ces réponses.
    A plus

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

Discussions similaires

  1. Réponses: 20
    Dernier message: 14/06/2008, 12h05
  2. Comment lier une application avec une librairie statique ?
    Par michel_bbm dans le forum Visual C++
    Réponses: 7
    Dernier message: 08/04/2008, 14h49
  3. Réponses: 3
    Dernier message: 21/11/2007, 08h32
  4. Réponses: 0
    Dernier message: 03/10/2007, 16h53
  5. Réponses: 1
    Dernier message: 20/06/2007, 12h34

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