Que distingue la validation de la vérification logicielle ?
La validation vérifie la conformité du logiciel à l’attendu, tandis que la vérification établit la correction du programme.
Que recherchent les tests statiques sans exécuter le programme ?
Ils recherchent des défauts de conception dans le code ou les spécifications.
Que font les tests dynamiques pour détecter des défaillances ?
Ils exécutent le code sur des scénarios.
Que garantissent les tests logiciels sur l’élimination des bugs ?
Ils ne garantissent pas l’élimination complète des bugs.
Que teste un test unitaire ?
Un module indépendamment des autres.
Que teste un test d’intégration ?
Plusieurs modules ensemble.
Que confronte un test système ou de validation ?
Le logiciel aux spécifications du client.
Quelle est la première étape d’un déroulement classique de test ?
Choisir un cas de test.
Sur quoi repose la conception d’un test en boîte blanche ?
L’accès au code.
Que vise la sélection des tests en boîte blanche concernant les chemins ?
Des chemins minimaux entre l’entrée et la sortie.
Quelles structures doivent être couvertes par les tests en boîte blanche ?
Les conditions d’arrêt des boucles, toutes les branches conditionnelles et les structures de données internes.
Que représente chaque nœud d’un graphe de flot de contrôle ?
Une instruction, avec un nœud final de sortie.
Quelles relations les arcs d’un graphe de flot de contrôle relient-ils ?
Les instructions successives, la fin d’une boucle à son début et les branches conditionnelles à la sortie de la condition.
Quelle formule calcule le nombre cyclomatique à partir de E et N ?
Quel est le rôle de JUnit pour Java ?
C’est un framework d’automatisation des tests unitaires.
Quelles personnes ont inventé JUnit ?
Kent Beck et Erich Gamma.
À partir de quelle version de Java JUnit 5 est-il utilisable ?
Java 8.
Quelle étape ouvre la méthodologie d’un test unitaire ?
La préparation de l’environnement, appelée SetUp.
Que fait-on après l’exécution des cas prévus d’un test unitaire ?
On évalue les résultats ou les effets de bord.
Où les tests JUnit 5 sont-ils implémentés par rapport au programme testé ?
Dans une classe de test séparée.
Que définissent les assertions JUnit ?
Les conditions de validité du test.
Que définissent les assumptions JUnit ?
Les critères de validité du contexte d’un test.
Que se passe-t-il si un test JUnit 5 ne respecte pas ses assumptions ?
Son exécution est empêchée.
Que permettent d’automatiser les tests paramétrés dans JUnit ?
L’exécution d’une même fonctionnalité avec plusieurs paramètres.
Quelles sources peuvent fournir les paramètres des tests paramétrés JUnit ?
@ValueSource, @MethodSource et @CSVSource.
Que font les tests répétés de JUnit ?
Ils lancent plusieurs fois le même test.
Quelle annotation lance un test répété en JUnit ?
@RepeatedTest(nb).
Quels sont les trois objectifs du test logiciel présentés ?
Baisser les coûts, diminuer les efforts de développement et augmenter la confiance dans le code et auprès du client.
Combien les bugs coûtent-ils par an aux États-Unis ?
64 milliards de dollars par an.
Selon E.W. Dijkstra, que peuvent révéler les tests ?
La présence d’erreurs, mais jamais leur absence.
Dans quelle œuvre et en quelle année E.W. Dijkstra formule-t-il cette limite des tests ?
Notes on Structured Programming, 1972.
Quelle granularité peut avoir un module testé unitairement ?
Une fonction, un package ou une classe.
Quand les tests interviennent-ils dans le cycle en V ?
Après le développement.
Qu’appelle un test qui échoue en TDD ?
Un développement.
Que faut-il faire aux conditions dans un graphe de flot de contrôle ?
Les décomposer toutes.
Quelles saisies faut-il inclure dans les tests d’un graphe de flot de contrôle ?
Des valeurs problématiques.
Que représente le nombre cyclomatique dans un graphe de flot ?
Le nombre minimal de chemins à tester.
À partir de quelle version de Java JUnit 4 est-il maintenu avec les annotations ?
Java 5.
Quel composant assure la compatibilité de JUnit 5 avec JUnit 4 ?
JUnit Vintage.
Quelle assertion JUnit 5 vérifie qu’une exécution déclenche une exception attendue ?
assertThrows(Exception.class, fonctionTest).
Quel JAR permet de compiler et d’exécuter des tests JUnit en ligne de commande ?
junit-platform-console-standalone.
Quel argument de junit-platform-console-standalone recherche les classes de test ?
--scan-classpath.
Quelle annotation JUnit 5 désactive un test ?
@Disabled.
Quel outil JUnit 5 regroupe plusieurs assertions ?
assertAll.
Que permettent de sélectionner les suites de tests JUnit ?
Des classes ou des packages pour créer des scénarios de test.
Comment les suites de tests JUnit gèrent-elles les tags ?
Elles permettent d’inclure ou d’exclure des tags.
Quelle annotation JUnit permet de créer des tests imbriqués ?
@Nested.
Quelle annotation JUnit génère des tests dynamiques à l’exécution ?
@TestFactory.
Teste tes connaissances avec un QCM de 16 questions sur Tests logiciels et JUnit 5.
1. Quelle distinction sépare la validation de la vérification d’un logiciel ?
2. Une équipe examine des spécifications sans exécuter le programme, puis lance le logiciel sur des scénarios. Comment caractériser ces deux activités ?
Révisez le cours complet dans la fiche de révision de Tests logiciels et JUnit 5.
Voir la fiche →Importe ton cours et l'IA génère des flashcards en 30 secondes.
Générateur de flashcards