Unitaires et d'intégration et de tests en C++
Je vais écrire une assez grande demande pour le projet d'école en C++. Jusqu'à présent, je suis tout à fait servir à l'ATS en Java et Ruby en utilisant JUnit et RSpec.
Mais en ce qui concerne mon expérience, je n'ai jamais vu un C/C++ projet avec toute la suite de tests.
Ce que la bibliothèque recommandez-vous pour les tests en C++?
Il y a aucune bonne moqueur/cogner les cadres pour le C++?
En fait, je suis à l'aide de NetBeans IDE et il semble y avoir pas de support pour les tests que ce soit.
Quel outil que vous recommanderiez pour les ATS en C++?
TDD est même possible avec C++? Le temps de compilation me semble être un gros inconvénient.
- Dupe de stackoverflow.com/questions/1439172/testing-code-in-c-c (et les autres)
Vous devez vous connecter pour publier un commentaire.
La Stimuler La Bibliothèque De Test vous donne tests unitaires, etc.
Il y a beaucoup de test de l'unité de cadres pour le C++. Le 2 j'ai le plus d'expérience avec CppUnit et CxxTest. Je préfère CxxTest que je trouve plus facile de ne pas avoir à enregistrer mon cas de test explicitement que vous avez à faire avec CppUnit. il y a un plugin eclipse pour CxxTest mais je ne sais pas si il y en a une pour NetBeans. La compilation ne devrait pas vraiment être un problème de bien écrit en C++ et certainement n'est pas une raison pour ignorer les tests unitaires /tdd.
Pour le test d'acceptation, j'ai utilisé exactor. C'est un outil basé sur java, mais il n'est pas difficile à utiliser dans un environnement C++.
Comparant CppTest et CppUnit je voudrais aller avec CppTest. CppTest a moins caché cadre et de l'OMI plus facile à comprendre et à mettre en œuvre. Personnellement, j'aime à voir la principal point d'entrée. J'ai aussi inclus Boost Framework de Test Unitaire. Il n'est pas xUnit base. Je ne suis pas un fan, mais si vous êtes déjà à l'aide de la Bibliothèque Boost, il serait bien de l'intégrer.
CppTest vs CppUnit
http://www.ibm.com/developerworks/aix/library/au-ctools3_ccptest/index.html?ca=drs-
CPPTEST
http://www.ibm.com/developerworks/aix/library/au-ctools3_ccptest/index.html?ca=drs-
CPPUNIT
avec les macros
http://www.ibm.com/developerworks/aix/library/au-ctools2_cppunit/
Boost Framework De Test Unitaire
http://www.beroux.com/english/articles/boost_unit_testing/
Nous utilisons Google Framework De Test. Et nous n'avons pas d'exécuter des tests sur tous les compiler sur les développeurs de machines. C'est un travail pour un serveur de build.
Pour la vérification Intégrée, pourrais-je vous suggérer le C++ mise en œuvre de l'AJUSTEMENT (Framework de Test Intégré) - http://fit.c2.com aka CEEFIT (http://ceefit.woldrich.com/?page=Home) (au moment de la rédaction de cet article le ceefit site était down. j'espère qu'il va revenir bientôt). J'ai personnellement utilisé CEEFIT pour exécuter des Tests sur l'héritage de code C++-bases qui interagissent avec la Conception Assistée par Ordinateur plate-forme de l'API (SolidWorks si vous êtes au courant de ça). J'ai la chance de CEEFIT est open source, parce que j'ai eu de l'étendre pour le faire personnalisé choses, comme lire plusieurs tables en entrée (comportement par défaut est de lire un seul tableau pour un test de la classe). Après avoir travaillé avec CEEFIT pour au moins un an maintenant, je suis relativement confiant, j'pouvez exécuter des Tests sur la plupart des systèmes avec cet outil.
Shameless plug - certains de mes billets de blog relatant mon expérience avec CEEFIT avec les téléchargements
http://ossandcad.blogspot.com/2009/07/swx-batch-mode-integrated-tests-with.html
http://ossandcad.blogspot.com/2009/02/writing-ceefit-class-like-regular-c.html
Il y a quelques réserves avec CEEFIT bien - fournir des commentaires par le biais d'un format de tableau n'est pas toujours possible (pas CEEFIT de la faute, c'est par la conception de l'AJUSTEMENT, qui CEEFIT simplement met en œuvre). Le code source n'a pas été mis à jour depuis de nombreuses années, si ma mémoire est bonne (car le site est en panne), depuis l'année 2005, mais depuis sa open source, cela n'a pas causé de nombreux problèmes pour moi dans mon travail).
Si vous avez l'habitude d'utiliser JUnit et jMock, je tiens à vous recommander :
Googlemock et transparente coorperate avec Googletest.
Pour le TDD, mon auto utilisation
avec certains scripts composé par moi-même. Et tous ceux-ci fonctionnent bien.
Nous travaillons dur pour rendre les tests unitaires et TDD faisable en C++. Nous prolongeons Eclipse CDT de le faire. Actuellement, vous pouvez essayer:
http://cute-test.com - notre framework de test unitaire avec Eclipse CDT plug-in
Un de mes étudiants de master est actuellement mise en œuvre de "Mockator", une maquette de l'objet de l'infrastructure qui fonctionne grâce à l'injection de dépendance par l'introduction de paramètres de modèle au lieu de l'obligation au moyen de la succession (comme par exemple avec google maquette). Cela devrait devenir disponible par le biais de notre MIGNON plug-in plus tard cet été.
Une autre équipe d'étudiants a mis en œuvre TDD soutien pour Eclipse CDT, qui va encore être intégrée dans notre mignon plug-in (mais fonctionne aussi sans le joli cadre).
Tout ce qui sera disponible gratuitement.
Shameless plug: jetez un oeil à cfix et Visual Affirmer.
unittest++
Que vous avez travaillé sur JUnit , Il serait facile pour vous de travailler sur CPPUnit