User Tools

Site Tools


2019_2020:s3:concprogobjet:td:td6

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
2019_2020:s3:concprogobjet:td:td6 [2019/11/02 21:26]
blay [Modélisation]
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 170: Line 173:
  
  
-==== Spécifications ​====+==== Spécification ​====
  
   * **V0 : Version de base**   * **V0 : Version de base**
-        - En tant que joueur, je veux répondre à une question du quizz <color /​lightblue>​ TRES FORTE PRIORITE </​color>​+        - En tant que joueur, je veux répondre à une question du quizz
            - Si j'ai la bonne réponse je gagne 1pt            - Si j'ai la bonne réponse je gagne 1pt
            - Si je n'ai pas la bonne réponse, la bonne réponse m'est donnée.            - Si je n'ai pas la bonne réponse, la bonne réponse m'est donnée.
Line 181: Line 184:
                - "​Quelle est la capitale de l'​Espagne",​ je réponds madrid ... j'ai gagné 1 pt                - "​Quelle est la capitale de l'​Espagne",​ je réponds madrid ... j'ai gagné 1 pt
                - "​Quelle est la capitale de l'​Érythrée",​ je réponds Assab, le jeu m'​annonce que la bonne réponse est Asmara, ​ je n'ai pas  gagné de points ​                - "​Quelle est la capitale de l'​Érythrée",​ je réponds Assab, le jeu m'​annonce que la bonne réponse est Asmara, ​ je n'ai pas  gagné de points ​
-        - En tant que joueur, je veux jouer une partie de quizz, de façon à m'​amuser en vérifiant mes connaissances. ​<color /​lightblue>​ FORTE PRIORITE </​color>​+        - En tant que joueur, je veux jouer une partie de quizz, de façon à m'​amuser en vérifiant mes connaissances. ​
  
 ==== 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
 +*/
  
  
2019_2020/s3/concprogobjet/td/td6.1572726390.txt.gz · Last modified: 2019/11/02 21:26 by blay