This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
2019_2020:s3:concprogobjet:td:td6 [2019/11/02 21:27] blay [Spécification] |
2019_2020:s3:concprogobjet:td:td6 [2019/11/06 13:40] (current) blay [Partie 1 : Tutoriel EasyMock (1h grand maximum)] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Tests d'intégration et conception en autonomie ====== | + | ====== Tests d'intégration et conception ====== |
Ce TD vise | Ce TD vise | ||
- à vous apprendre à mettre en place des tests d'intégration | - à vous apprendre à mettre en place des tests d'intégration | ||
- à concevoir une petite application à plusieurs en prévoyant les tests d'intégration. | - à concevoir une petite application à plusieurs en prévoyant les tests d'intégration. | ||
+ | /* | ||
<note important>4h c'est à dire 2 séances seront consacrées à ce TD. | <note important>4h c'est à dire 2 séances seront consacrées à ce TD. | ||
Vous ne parviendrez peut etre pas à tout faire. | Vous ne parviendrez peut etre pas à tout faire. | ||
Line 9: | Line 10: | ||
- Ne trainez pas non plus ! | - Ne trainez pas non plus ! | ||
</note> | </note> | ||
+ | */ | ||
===== Partie 1 : Tutoriel EasyMock (1h grand maximum) ===== | ===== Partie 1 : Tutoriel EasyMock (1h grand maximum) ===== | ||
Line 15: | Line 17: | ||
- Voici le .jar dont vous avez besoin pour avoir accès à l'{{:2019_2020:s3:concprogobjet:td:easymock-4.0.2.jar|environnement EasyMock}}. | - Voici le .jar dont vous avez besoin pour avoir accès à l'{{:2019_2020:s3:concprogobjet:td:easymock-4.0.2.jar|environnement EasyMock}}. | ||
- | - Pour l'ajouter à votre classpath du projet : sur le nom du projet > Properties > Java Build Path > Puis ajouter le .jar ci-dessus.{{:2019_2020:s3:concprogobjet:td:capture_d_e_cran_2019-11-02_a_18.22.00.png?200|}} | + | - Créer un projet java |
- | - Voici l'interface dont dépendent vos codes, mais que vous ne devez pas implémenter. <code java> | + | - Ajouter à votre **classpath** du projet le .jar donné ci-dessus : sur le nom du projet > Properties > Java Build Path > Puis ajouter le .jar ci-dessus.{{:2019_2020:s3:concprogobjet:td:capture_d_e_cran_2019-11-02_a_18.22.00.png?200|}} |
+ | - Voici l'interface dont dépendent vos codes, mais que vous ne devez pas implémenter. Ajoutez la à votre projet. <code java> | ||
public interface Collaborator { | public interface Collaborator { | ||
Line 184: | Line 187: | ||
==== Modélisation ==== | ==== Modélisation ==== | ||
- | Un groupe a proposé l'an dernier les interfaces suivantes. | + | |
+ | === Exigences === | ||
+ | Voici les interfaces qui vous sont données et que vous devez respecter. | ||
<code java> | <code java> | ||
public interface GameInterface { | public interface GameInterface { | ||
Line 270: | Line 275: | ||
} | } | ||
</code> | </code> | ||
- | + | === A Faire === | |
- | - Modélisez par groupe de 2 ou 3 étudiants, le jeu | + | - **Modélisez** par groupe de 2 ou 3 étudiants, le jeu |
- | - En particulier, intéressez aux interactions entre les classes. | + | - En particulier, intéressez-vous aux interactions entre les classes. |
- | - Une fois que vous êtes d'accord. | + | - Une fois que vous êtes d'accord, vous passez à la suite |
- | - Développez séparément | + | - **Développez** séparément |
- Etudiant 1 : Développez la classe ''Game'' sans développer la classe ''Quiz''. | - Etudiant 1 : Développez la classe ''Game'' sans développer la classe ''Quiz''. | ||
- Tester votre classe ''Game'' en utilisant des Mocks. | - Tester votre classe ''Game'' en utilisant des Mocks. | ||
- Etudiant 2 : Développez la classe ''Quizz'' sans développer la classe ''Question''. | - Etudiant 2 : Développez la classe ''Quizz'' sans développer la classe ''Question''. | ||
- Tester votre classe ''Quizz'' en utilisant des Mocks | - Tester votre classe ''Quizz'' en utilisant des Mocks | ||
- | - | + | - Intégrez vos codes. |
+ | L'essentiel n'est pas d'atteindre cette ultime étape. Mais davantage d'apprendre à écrire des tests d'intégration. | ||
+ | |||
+ | |||
+ | /* | ||
+ | === Headline === | ||
Line 314: | Line 324: | ||
* V1C : Des difficultés de questions. | * V1C : Des difficultés de questions. | ||
* V1D : Persistance : les questions sont stockées dans un fichier, de même pour les parties. | * V1D : Persistance : les questions sont stockées dans un fichier, de même pour les parties. | ||
- | + | */ | |
- | ==== A faire ==== | + | /* ==== A faire ==== |
- Conception : V0 (Environ 1/2 heure intense) | - Conception : V0 (Environ 1/2 heure intense) | ||
Line 339: | Line 349: | ||
- 8-O reprendre la question précédente. | - 8-O reprendre la question précédente. | ||
- Si vous êtes ici et que vous en avez envie ajoutez une autre extension. | - Si vous êtes ici et que vous en avez envie ajoutez une autre extension. | ||
+ | */ | ||
+ | |||
+ | /* | ||
Line 353: | Line 366: | ||
</code> | </code> | ||
+ | */ | ||
+ | /* | ||
==== A RENDRE ==== | ==== A RENDRE ==== | ||
- Document | - Document | ||
Line 364: | Line 379: | ||
Voici le document qui sera utilisé pour l'évaluation (il peut encore changer) : https://goo.gl/forms/PmNPOPcurIKJLlo32 | Voici le document qui sera utilisé pour l'évaluation (il peut encore changer) : https://goo.gl/forms/PmNPOPcurIKJLlo32 | ||
+ | */ | ||