Ma technique la plus utile pour trouver des bugs est l'aide de
AFFIRMERs.
J'ai trouvé beaucoup de très subtil de bugs (et aussi beaucoup de pas si
subtil) de cette façon. Bugs qui pourraient autrement passer inaperçus, mais
néanmoins provoquer par exemple des résultats incorrects. Par exemple seulement
pour le type particulier de l'entrée. Dans de nombreux cas, il ne serait pas
été possible de prédire l'existence d'un bug, même
avec beaucoup de réflexion.
Les assertions sont disponibles dans une forme ou l'autre dans la plupart des
les environnements. Je les ai utilisé avec C, C++, VB.NET, C#,
Python et Perl. L'action quand une ASSERTION évalue à
faux ne doit pas nécessairement être de quitter le programme.
Ils peuvent également être enregistrées dans un fichier ou une boîte de dialogue est affichée
(arrêt de l'exécution). Le second est la valeur par défaut de Visual
Studio (applications de bureau seulement?).