Aller au contenu principal

Informatique · Première · 2 min de lecture

Spécifier une fonction et choisir ses tests

Prototyper une fonction (nom, paramètres, type du résultat) et la documenter ; décrire des préconditions sur les arguments et des postconditions sur le résultat ; les vérifier par des assertions (assert) ; construire un jeu de tests couvrant les cas ordinaires et les cas limites ; un jeu de tests réussi ne prouve pas la correction d'un programme ; diversité des langages et constructions élémentaires communes.

Chapitre du programme : Numérique et sciences informatiques (spécialité)

Bloc 1 sur 7 · Comprendre

Comprendre

Une spécification décrit le service attendu d'une fonction sans imposer son algorithme. Elle précise les entrées admises, le résultat et les éventuelles modifications de l'état. Une précondition doit être satisfaite avant l'appel ; une postcondition décrit ce qui est garanti après un appel conforme.

Bloc 2 sur 7 · Approfondir

Approfondir

Séparez domaine des données, cas ordinaires et frontières. Un test confronte un résultat observé à un résultat attendu déterminé à l'avance. Quelques tests réussis ne prouvent pas une propriété universelle ; ils peuvent en revanche révéler un contre-exemple et protéger une correction contre une régression.

Bloc 3 sur 7 · Exemple

Exemple travaillé

Une fonction détermine si un âge entier compris entre0et120 inclus vaut au moins18. Les tests17→faux,18→vrai et120→vrai vérifient le seuil et la borne supérieure. La valeur−1 viole la précondition : on ne lui invente pas une réponse booléenne, sauf si le contrat prévoit explicitement un traitement d'erreur.

Bloc 4 sur 7 · Visualiser

Visualiser le raisonnement

Tracez l'intervalle autorisé puis placez le seuil18. Annotez séparément la zone interdite et les deux zones où la réponse est définie. Cette représentation distingue une erreur de domaine d'un simple résultat faux.

Continuez sur votre lancée

Vous avez découvert l’essentiel et un exemple. Retrouvez la suite du cours et les points à retenir, puis passez à l’entraînement guidé dans votre compte.

  • Les formules et les repères à retenir
  • Les erreurs fréquentes expliquées
  • Un exercice avec des aides et sa correction

L’accès gratuit comprend les cours et exercices de votre niveau choisi.

Sources

  • https://docs.python.org/3/tutorial/
  • Python Software Foundation, unittest : https://docs.python.org/3/library/unittest.html
  • Python Software Foundation, assertions : https://docs.python.org/3/reference/simple_stmts.html#the-assert-statement

Vous pensez avoir trouvé une erreur dans cette leçon ? Signalez-la par e-mail.

Explorer les autres cours

Accès rapide