Podcast
Questions and Answers
Quelle est la principale utilité des tests en génie logiciel?
Quelle est la principale utilité des tests en génie logiciel?
- Évaluer si une implémentation correspond aux spécifications et aux attentes du client. (correct)
- Optimiser la vitesse d'exécution du code.
- Réduire la taille du code source.
- Automatiser le déploiement de l'application.
Un test d'intégration vise à tester une classe ou un composant de manière isolée.
Un test d'intégration vise à tester une classe ou un composant de manière isolée.
False (B)
Quel est l'objectif principal des tests de régression dans le contexte des tests unitaires?
Quel est l'objectif principal des tests de régression dans le contexte des tests unitaires?
Re-tester la classe à chaque fois qu'elle est modifiée.
Dans le processus agile, le développement dirigé par les tests est appelé ______.
Dans le processus agile, le développement dirigé par les tests est appelé ______.
Parmi les propositions suivantes, laquelle décrit le mieux un cadre de développement (framework) pour les tests unitaires?
Parmi les propositions suivantes, laquelle décrit le mieux un cadre de développement (framework) pour les tests unitaires?
Dans JUnit, il n'est pas nécessaire de créer une classe de test pour tester une classe existante.
Dans JUnit, il n'est pas nécessaire de créer une classe de test pour tester une classe existante.
Quel tag est utilisé dans JUnit pour identifier une méthode comme un test unitaire?
Quel tag est utilisé dans JUnit pour identifier une méthode comme un test unitaire?
Dans JUnit, on utilise des ______ pour comparer le résultat retourné par une méthode par rapport au résultat attendu.
Dans JUnit, on utilise des ______ pour comparer le résultat retourné par une méthode par rapport au résultat attendu.
Quelle est la meilleure pratique en matière de tests unitaires concernant le moment de leur écriture par rapport à l'implémentation de la classe?
Quelle est la meilleure pratique en matière de tests unitaires concernant le moment de leur écriture par rapport à l'implémentation de la classe?
Associez chaque niveau de test avec sa description appropriée :
Associez chaque niveau de test avec sa description appropriée :
Flashcards
Tests en génie logiciel
Tests en génie logiciel
Une technique pour évaluer la conformité d'une implémentation aux spécifications et aux attentes du client.
Tests unitaires
Tests unitaires
Tests d'une classe ou d'un composant individuel.
Tests d'intégration
Tests d'intégration
Vérifie l'interface et l'interaction entre deux composants différents.
Tests de système
Tests de système
Signup and view all the flashcards
Focus d'un test unitaire
Focus d'un test unitaire
Signup and view all the flashcards
Unité en programmation orientée objet
Unité en programmation orientée objet
Signup and view all the flashcards
Objectifs des tests unitaires
Objectifs des tests unitaires
Signup and view all the flashcards
Quand écrire des tests
Quand écrire des tests
Signup and view all the flashcards
Cadre de développement
Cadre de développement
Signup and view all the flashcards
Tester une classe avec JUnit
Tester une classe avec JUnit
Signup and view all the flashcards
Study Notes
- LOG121 porte sur la conception orientée objet.
- Cette présentation est une introduction aux tests unitaires.
Tests en génie logiciel
- Il s'agit d'une technique empirique qui vise à recueillir des informations pour évaluer la conformité d'une implémentation aux spécifications et aux attentes du client.
- Le fonctionnement et la qualité de l'implémentation sont testés dans certaines conditions.
- Les tests servent à détecter et à corriger les erreurs dans l'implémentation.
- Les tests peuvent se faire à différents niveaux : unitaire, intégration et système.
- Unitaire : test d'une classe ou d'un composant.
- Intégration : sert à vérifier l'interface et l'interaction entre deux composants différents, et doit se faire de manière incrémentale.
- Système : évalue l'ensemble du système par rapport aux exigences.
Tests unitaires
- Un test unitaire se concentre sur une unité de code source.
- En programmation orientée objet, l'unité individuelle est la classe.
- Il est important de fournir un jeu de tests lors de l'implémentation d'une classe.
- Les objectifs des tests unitaires sont de prouver que la classe fonctionne correctement, de la re-tester à chaque modification (tests de régression), de réduire le temps passé à déboguer, de permettre la réalisation de tests de façon régulière, et de faciliter l'intégration ultérieure avec le reste de l'application.
- Les tests doivent être développés en même temps que la classe, avant, pendant et après son implémentation.
- Dans le processus agile, on parle de développement dirigé par les tests (TDD).
Cadres de développement pour les tests
- Plusieurs cadres de développement facilitent l'écriture de tests unitaires, par exemple JUnit et CUnit.
- Un cadre de développement est une librairie de classes qui facilite le développement d'applications (framework).
- Il fournit une fonctionnalité générique que l'on peut étendre pour implémenter une fonctionnalité plus spécifique.
- Il fournit une interface bien définie (API).
JUnit
- Pour tester une classe avec JUnit, une classe de tests doit être créée
- Chaque cas de test doit être placé dans une méthode.
- L'ensemble des tests JUnit est regroupé au sein d'une classe.
- Il est recommandé que le nom d'une classe de test soit le nom de la classe à tester suivi par "Test", par exemple,
MaClasseTest
pour testerMaClasse
. - Un test JUnit est une méthode de test, précédée du tag
@Test
. - Des assertions sont utilisées dans le corps de cette méthode pour comparer le résultat retourné par une méthode au résultat attendu.
- Un cas de test est organisé comme suit : création des conditions correspondant à l'état avant le test, exécution de la méthode que l'on veut tester, et vérification que l'état après exécution correspond à l'état attendu (assertions).
- Il est possible de créer une suite de tests pour exécuter un ensemble de tests.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.