Valider un programme? - Test de validité & Co

Bonjour à tous,

Voila, j’aimerais savoir s’il existe des outils (de préférence gratuits) permettant de valider le bon fonctionnement d’un programme.

Exemple concret: j’ai codé il y a quelques mois un logiciel (en C), et aujourd’hui, j’apprends que ce programme plante de manière aléatoire environ 1 fois par jour.

La première option serait de reprendre le code source, et de vérifier, fonction par fonction, qu’il n’y a pas de bizarrerie… Avantage: c’est gratuit. Par contre, c’est long et fastidieux (faut se replonger dans un projet qui parfois à plusieurs mois).

La deuxième option qui pourrait m’intéresser, c’est d’utiliser un logiciel qui analyserait le code source et qui serait capable de mettre en évidence des erreurs grossières (style variable non initialisée, pointeur fichier ouvert mais jamais fermé etc.)

je ne sais pas si cela existe, en tout cas je n’en ai pas connaissance.

Merci par avance!

Regarde du côté des tests unitaires (en gros tu vas pouvoir faire vérifier ton code avec des fonctions de tests que TU vas écrire pour chacune des fonctions de ton application de manière automatisée) et des tests de recette (on vérifie que l’application générale fonctionne et a bien les résultats voulus).

Y a des outils pour ça dans chaque langage, à toi de chercher :wink:

+1 pour les tests unitaires, même si c’est long à réaliser correctement.

Sinon il faudrait identifier le problème (scénario qui fait que l’appli plante)

Sinon compiler avec tous les warnings?

Pour analyser les problème de boucle et fuite mémiore, an Java, il y a OptimizeIt, mais en C c’est chaud à trouver, il y a bien 2- 3 trucs:
http://ftp.traduc.org/doc-vf/gazette-linux…00/lg100-A.html

en dot net
http://lgmorand.developpez.com/dotnet/optimizeit/

ça c’est pour l’analyse “à chaud”, mais les test unitaire auto c’est bien aussi :wink:

Oui, ça compile sans aucun warning, mais j’ai appris à mes dépends que parfois cela ne signifiait pas “sans erreur” :smiley: