Тест: Introduction au TDD et Tests Automatisés — 11 въпроса

Подробни въпроси и отговори

1. Quel est le principe du Test Driven Development ?

Décrire la fonctionnalité dans un document avant de commencer le code
Coder d’abord toute la fonctionnalité, puis ajouter des tests de vérification
Écrire uniquement des tests après la mise en production
Écrire d’abord un test pour un cas concret, puis coder pour le faire passer

Écrire d’abord un test pour un cas concret, puis coder pour le faire passer

Обяснение

Le TDD consiste à commencer par un test sur un cas précis, puis à développer la fonctionnalité jusqu’à ce que ce test réussisse. L’ordre inverse ne correspond pas à cette méthode.

2. Qu'est-ce que le développement piloté par les tests (TDD)?

Une technique où l'on écrit d'abord un test pour une fonctionnalité, puis on développe le code pour le faire passer.
Un processus où l'on écrit uniquement les tests sans développer de fonctionnalités.
Une pratique consistant à tester manuellement chaque fonctionnalité avant son déploiement.
Une méthode où l'on écrit d'abord une fonctionnalité, puis un test pour la vérifier.

Une technique où l'on écrit d'abord un test pour une fonctionnalité, puis on développe le code pour le faire passer.

Обяснение

Le TDD consiste à écrire d'abord un test pour une fonctionnalité précise, puis à développer le code nécessaire pour faire passer ce test. Il ne s'agit pas d'écrire la fonctionnalité en premier ni de se limiter aux tests manuels.

3. Quel risque principal existe lorsqu’une fonctionnalité est développée sans tests ?

Une modification peut casser une autre partie du site sans être détectée
La fonctionnalité est forcément plus lente à exécuter
Les routes HTTP ne peuvent plus être appelées
Le code devient automatiquement incompatible avec JavaScript

Une modification peut casser une autre partie du site sans être détectée

Обяснение

Sans tests, une erreur peut passer inaperçue et provoquer des régressions dans d’autres parties du site. Les autres propositions ne décrivent pas le risque mis en avant ici.

4. Selon le concept de Test Driven Development (TDD), quelle est la première étape dans le processus de développement ?

Faire des tests après le développement complet.
Déployer le code en production.
Écrire un test pour une fonctionnalité spécifique.
Écrire directement la fonctionnalité sans tests.

Écrire un test pour une fonctionnalité spécifique.

Обяснение

Dans le TDD, on commence toujours par écrire un test qui décrit le comportement attendu de la fonctionnalité, avant de coder celle-ci. Cela permet de valider la fonctionnalité par la suite.

5. Dans une démarche TDD, quelle est la bonne manière d’aborder un cas concret ?

Ajouter plusieurs cas sans préciser le comportement attendu
Commencer par optimiser le code avant de définir le résultat attendu
Écrire la fonction complète, puis supprimer le test si tout marche
Écrire un test qui exprime l’attente, puis implémenter la fonction

Écrire un test qui exprime l’attente, puis implémenter la fonction

Обяснение

Le principe est de formuler d’abord l’attente sous forme de test, puis d’écrire le code qui la satisfait. Cela permet de guider l’implémentation par le besoin réel.

6. Quel est le rôle principal de Jest dans un processus de développement logiciel ?

Il remplace le débogage manuel par des outils visuels.
Il exécute automatiquement les fichiers de test pour valider le code.
Il optimise la performance du code en production.
Il sert à écrire le code principal de l'application.

Il exécute automatiquement les fichiers de test pour valider le code.

Обяснение

Jest est conçu pour détecter et exécuter automatiquement les fichiers de test, permettant ainsi de vérifier rapidement la conformité du code. Les autres options ne décrivent pas la fonction principale de Jest.

7. Dans un test backend qui appelle une route avec Supertest, que faut-il vérifier en priorité pour une réponse réussie ?

Le nom du fichier de test avant la route appelée
La quantité de lignes de code dans la fonction
La présence d’un commentaire dans le test
Le code HTTP avant le contenu du body

Le code HTTP avant le contenu du body

Обяснение

Un test backend commence généralement par vérifier le statut HTTP, par exemple 200, avant d’inspecter le contenu de la réponse. Le body vient ensuite pour contrôler les données renvoyées.

8. Quand est-ce que la détection et l'exécution automatique des fichiers de test sont généralement assurées lors du développement avec Jest ?

Après la mise en production
Après la rédaction manuelle de chaque test
Lorsque les fichiers de test sont nommés avec l'extension .test.js
Avant l'écriture du code

Lorsque les fichiers de test sont nommés avec l'extension .test.js

Обяснение

La détection et l'exécution automatique des fichiers de test par Jest se produisent lorsque ces fichiers sont nommés avec l'extension .test.js, ce qui permet à Jest de les reconnaître et de les exécuter automatiquement lors du lancement des tests.

9. En quoi les dépendances de développement (devDependencies) diffèrent-elles des dépendances de production (dependencies) dans un projet JavaScript ?

Les devDependencies sont liées à la configuration du serveur, alors que dependencies concernent uniquement le code client.
Les dependencies incluent uniquement les bibliothèques externes, alors que devDependencies concernent aussi le code personnalisé.
Les devDependencies sont installées uniquement pour le développement et les tests, tandis que dependencies sont nécessaires en production.
Les devDependencies sont stockées dans un dépôt séparé et ne sont pas incluses lors du déploiement en production.

Les devDependencies sont installées uniquement pour le développement et les tests, tandis que dependencies sont nécessaires en production.

Обяснение

Les devDependencies sont utilisées uniquement pour le développement, comme les outils de test, et ne sont pas nécessaires lors de l'exécution en production, tandis que dependencies sont essentielles pour faire fonctionner le projet en environnement réel.

10. Qui est crédité comme étant l'inventeur ou le principal promoteur de la méthode Test Driven Development (TDD) ?

Martin Fowler
Kent Beck
Eric Evans
Robert C. Martin

Kent Beck

Обяснение

Kent Beck est reconnu comme le créateur et le promoteur principal du TDD, ayant popularisé cette approche dans le cadre de l'agile et du développement logiciel.

11. Quelles sont les causes principales qui expliquent la nécessité d'utiliser des assertions Jest pour la vérification de clés du corps dans les tests back-end ?

Un problème de compatibilité entre la requête et la serveur qui ne peut être détecté que par Jest
Un défaut dans la validation automatique des données côté client
L'incapacité des tests manuels à détecter des erreurs de structure dans le corps de la réponse
Le risque que des clés du corps soient incorrectes ou manquantes, menant à des comportements inattendus en production

Le risque que des clés du corps soient incorrectes ou manquantes, menant à des comportements inattendus en production

Обяснение

L'utilisation d'assertions Jest pour vérifier des clés du body permet de détecter que des clés essentielles sont incorrectes ou manquantes, ce qui pourrait provoquer des erreurs en production si non contrôlé. Les autres options concernent des causes indirectes ou ne relèvent pas directement de la vérification via assertions.

Прегледайте с флашкарти

Запомнете отговорите с 9 флашкарти по Introduction au TDD et Tests Automatisés.

Test Driven Development — définition ?

Écrire un test avant de développer la fonctionnalité.

Définition TDD

Écrire tests avant le code.

Risques sans tests — conséquence ?

Fonctionnalités mal développées ou cassant d’autres parties.

Вижте флашкартите →

Учете с листа за преговор

Прочетете пълния лист за преговор на Introduction au TDD et Tests Automatisés.

Вижте листа за преговор →

Similar courses

Създайте свои собствени тестове

Импортирайте курса си и AI генерира тестове с корекции за 30 секунди.

Генератор на тестове