Aller au contenu

Numérique et sciences informatiques (spécialité) · Première

Spécification et tests : quiz de NSI en Première

Publié le 6 novembre 2026 · Mis à jour le 6 novembre 2026 · Signaler une erreur

L'essentiel

  • Une spécification décrit les exigences qu'un produit doit satisfaire : elle dit ce que fait une fonction, pas comment elle le fait 4.
  • Un test confronte une réalisation à sa spécification : à une entrée donnée correspond un résultat attendu, et le verdict est un succès ou un échec 5.
  • Un test unitaire vérifie une partie précise d'un programme, indépendamment du reste 5.
  • Réussir quelques tests ne prouve pas qu'une fonction est correcte : choisis des cas variés, dont les cas limites.
  • Écrire les tests avant le code évite d'être influencé par ce code 5.

Avant de commencer

Ce quiz couvre la notion de spécification et de test telle qu'on la rencontre en NSI : ce que dit la spécification d'une fonction, ce qu'est un test unitaire, comment choisir des cas de test utiles, et pourquoi on écrit parfois les tests avant le code. Il t'entraîne aussi à lire un énoncé de type épreuve pratique, où l'on te fournit une spécification et parfois un jeu de test.

Quiz

16 questions · correction immédiate · ton score reste sur ton appareil.

  1. Que désigne la spécification d'un produit, par exemple d'un logiciel ?

  2. Une fonction moyenne(t) doit renvoyer la moyenne des nombres du tableau t. Lequel de ces éléments n'a pas sa place dans sa spécification ?

  3. Quel est le but d'un test unitaire ?

  4. Un test unitaire s'exécute toujours sur le programme complet, jamais sur une fonction isolée.

  5. Un test confronte deux choses. Lesquelles ?

  6. La spécification de moyenne(t) dit : « renvoie la moyenne des éléments du tableau non vide t ». Quel résultat attend-on pour moyenne([4, 8, 12]) ?

  7. Un jeu de test est utile pour contrôler une fonction. Quels éléments y trouve-t-on ? (plusieurs réponses)

    Plusieurs réponses possibles.

  8. Une fonction réussit trois tests choisis par son auteur. Peut-on affirmer qu'elle est correcte pour toutes les entrées possibles ?

  9. Selon la démarche présentée pour les tests unitaires, il vaut mieux écrire les tests avant le code que l'inverse.

  10. Dans cette démarche, pourquoi le tout premier test écrit échoue-t-il forcément ?

  11. Dans un sujet d'épreuve pratique de NSI, le premier exercice demande en général de…

  12. La spécification de maximum(t) indique que t est un tableau non vide d'entiers. Parmi ces tests, lequel vérifie un cas limite pertinent ?

  13. Une fonction f(n) est spécifiée ainsi : elle renvoie le double de n si n est pair, et n + 1 si n est impair. Quel résultat attend-on pour f(7) ?

  14. En Python, on écrit assert moyenne([4, 8, 12]) == 8. Que se passe-t-il si la fonction renvoie 9 ?

  15. Que mesure la couverture de code associée aux tests unitaires ?

  16. Il n'existe des outils de tests unitaires que pour un seul langage de programmation.

Les questions qu'on se pose

Quelle différence entre la spécification et le programme ?

La spécification décrit les exigences à satisfaire : quelles entrées sont acceptées, quel résultat est attendu 4. Le programme est une manière de les réaliser. Plusieurs programmes très différents peuvent respecter la même spécification, tant que, pour chaque entrée permise, ils donnent le résultat attendu.

Combien de tests faut-il écrire pour une fonction ?

Il n'y a pas de nombre magique. Vise des cas variés : un cas ordinaire, les cas limites permis par la spécification (tableau à un élément, valeur nulle…), et un cas pour chaque branche du raisonnement. La couverture de code aide à vérifier que les tests parcourent bien les instructions du programme 5. Réussir peu de tests ne prouve cependant pas que la fonction est correcte.

Que faire si un test échoue alors que ma fonction me semble juste ?

Vérifie d'abord le test lui-même : le résultat attendu doit se déduire de la spécification, pas du code. Refais le calcul à la main. Si le test est bon, la différence entre résultat obtenu et résultat attendu te montre où chercher dans la fonction : trace-la pas à pas sur cette entrée précise. À l'épreuve pratique, un jeu de test fourni avec les réponses attendues te permet de te contrôler de cette façon 2.

Sources

  1. Programmes et ressources en numérique et sciences informatiques — voie générale, Éduscol. Consulté le 6 novembre 2026.
  2. Ressource officielle Éduscol — Spécification et tests, Éduscol. Consulté le 6 novembre 2026.
  3. Banque des épreuves pratiques de spécialité NSI, Éduscol. Consulté le 6 novembre 2026.
  4. Spécification (norme technique), Wikipédia. Consulté le 6 novembre 2026.
  5. Test unitaire, Wikipédia. Consulté le 6 novembre 2026.

Les numéros dans le texte renvoient à ces sources. Une source qui ne dit pas ce qu'on lui fait dire ? Signale-le.

Signaler une erreur sur cette page

Je suis en…

Primaire

  • CP Bientôt
  • CE1 Bientôt
  • CE2 Bientôt
  • CM1 Bientôt
  • CM2 Bientôt

Collège

Lycée

Supérieur

  • BTS Bientôt
  • BUT Bientôt
  • Licence Bientôt
  • Prépas Bientôt

Sur cette page