Tester son programme
Toute fonction (et tout programme) doit être testée afin de vérifier que son comportement est celui désiré par le programmeur.
Ces tests de validation, nombreux et bien choisis, ne peuvent pas garantir que le programme est exempt de bugs. Ils permettent toutefois de s'assurer que la fonction semble remplir son rôle dans les cas usuels.
Plan de test
Le plan de tests de validation a pour rôle de débusquer les bugs. Pour cela, il faut penser à tous les cas possibles (y compris les cas particuliers) qu'un premier raisonnement hâtif aurait pu oublier.
Sur le cahier, on représente ce plan sous la forme d'un tableau dans lequel on :
liste les cas possibles ;
choisit des valeurs « arbitraires » pour les paramètres (d'entrée) ;
détermine à la main les valeurs des variables intermédiaires et des variables renvoyées par la fonction (ou le programme).
Par exemple (il peut y avoir plus ou moins de colonnes de chaque catégorie) :
cas | paramètre 1 | paramètre 2 | variable interne 1 | valeur attendue 1 | valeur attendue 2 |
---|---|---|---|---|---|
Cas n°1 | à (bien) choisir | à (bien) choisir | à déterminer | à déterminer | à déterminer |
Cas n°2 | à (bien) choisir | à (bien) choisir | à déterminer | à déterminer | à déterminer |
Cas n°3 | ... |
Il faudra systématiquement prévoir un plan de test pour les programmes rendus à l'enseignant. Ces tests devront couvrir les cas génériques et les cas extrêmes (égalité lors d'un test d'inégalité, situation où la boucle while ou for n'est pas exécutée, etc...).
Dans la partie s’entraîner, on présentera 2 exemples de plan de tests.