User Tools

Site Tools


2018_2019:s3:concprogobjet:td:s3atd1

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
Last revision Both sides next revision
2018_2019:s3:concprogobjet:td:s3atd1 [2018/09/06 18:28]
blay [Génération des codes (10 mn)]
2018_2019:s3:concprogobjet:td:s3atd1 [2018/09/06 22:04]
blay [Pour communiquer]
Line 1: Line 1:
 +
 +
 ====== TD1 : Prise en main de l'​environnement de développement ====== ====== TD1 : Prise en main de l'​environnement de développement ======
  
Line 112: Line 114:
  
  
-   {{fa>​arrow-circle-right?​24}} [[2018_2019:​s3:​concprogobjet:​td:​s3atd1:​creationProjet|Créez un projet java]] ​+  * {{fa>​arrow-circle-right?​24}} [[2018_2019:​s3:​concprogobjet:​td:​s3atd1:​creationProjet|Créez un projet java]] ​
  
  
Line 152: Line 154:
           - Préciser si vous voulez travailler avec des vecteurs ou autres (Réfléchissez!!) {{ :​2014_2015:​s3:​concprogobjet:​td:​generationcodejava.png?​direct&​200 |}}           - Préciser si vous voulez travailler avec des vecteurs ou autres (Réfléchissez!!) {{ :​2014_2015:​s3:​concprogobjet:​td:​generationcodejava.png?​direct&​200 |}}
   - {{fa>​arrow-circle-right?​24}} ​ Vérifier que vous avez bien toutes les classes prévues qui ont été générées;  ​   - {{fa>​arrow-circle-right?​24}} ​ Vérifier que vous avez bien toutes les classes prévues qui ont été générées;  ​
-  - Retourner sous votre IDE. Si votre répertoire est mal organisé (nouveau package par exemple, déplacer simplement les codes comme vous le voulez, par glisser/​coller.)+  - {{fa>​arrow-circle-right?​24}}  ​Retourner sous votre IDE. Si votre répertoire est mal organisé (nouveau package par exemple, déplacer simplement les codes comme vous le voulez, par glisser/​coller.)
   - {{fa>​arrow-circle-right?​24}} ​ Corriger vos codes pour qu'ils soient "​compilables"​ :    - {{fa>​arrow-circle-right?​24}} ​ Corriger vos codes pour qu'ils soient "​compilables"​ : 
-          -  ​Afin ​que les annotations de Modelio soient comprises, ajouter {{:​javadesigner.jar|}} comme une library du projet ​+          - ou en éliminant les annotations (@...) 
 +          - ou en faisant en sorte que les annotations de Modelio soient comprises, ajouter {{:​javadesigner.jar|}} comme une library du projet ​
                  * sous [[https://​mbf-iut.i3s.unice.fr/​doku.php?​id=eclipse#​ajouter_un_jar_externe|Eclipse]] ​                  * sous [[https://​mbf-iut.i3s.unice.fr/​doku.php?​id=eclipse#​ajouter_un_jar_externe|Eclipse]] ​
-                 * sous IntelliJ 
-                      - déposer sous idea/​libraries... puis sélectionner le .jar et l'​enregistrer comme une librairie utilisée par le projet 
-                      - **ou bien** placez vous sur le projet puis avec le menu contextuel (clique droit) > Open module Setting > Librairies et ajouter le .jar 
 <​html>​ <​html>​
 <!-- <!--
Line 167: Line 167:
  
  
-==== Mise en place du programme principal préliminaire (10mn) ==== 
  
-Voici ce que doit faire a minima votre programme principal, pour cela retourner dans le fichier de test et ajouter un cas de test : "​testMonScenario.java" ​ ou des tests pour :  
-  - créer un bus de nom "​Nice-Circulation",​ 
-  - créer un message annonçant "une attente de 5mn" 
-  - créer un message annonçant "un accident"​ 
-  - récupérer les messages sur le bus de nom "​Nice-Circulation",​ 
-  - afficher le contenu des messages. 
- 
- 
-Ce programme ne peut pas tourner puisque quasi rien n'est implémenté,​ par contre vous pouvez vous aider de votre IDE pour qu'au moins il soit "​syntaxiquement"​ juste et créer les bonnes méthodes si elles n'​existent pas déjà, ou les appeler! ​ 
- 
-A la fin de ce TD, évidemment,​ il fonctionnera. 
  
  
Line 189: Line 177:
 Vous avez déjà utilisé JUnit l'an dernier, il devrait s'agir uniquement de rappels. ​ Vous avez déjà utilisé JUnit l'an dernier, il devrait s'agir uniquement de rappels. ​
  
-<​accordion ​ collapsed="​true">​ +**Sous ECLIPSE** 
-/---------------- +    - {{fa>arrow-circle-right?​24}} ​Dans le menu contextuel de, par exemple la classe //​Message//,​ cliquez sur //New – Others - Java - JUnit Test Case//​((Cette partie du TD reprend en partie le tutoriel JUNIT : http://​www.junit.fr/​2011/​11/​20/​tutoriel-eclipse-junit-mon-premier-test-automatique/​)). {{ :​2014_2015:​s3:​concprogobjet:​td:​junittestcase.png?​direct&​200 |}} Dans le panneau qui s'​affiche {{ :​2014_2015:​s3:​concprogobjet:​td:​messagetest.png?​direct&​200 |}}
-*/ +
-<panel title="​Eclipse"  ​> +
-    ​- Dans le menu contextuel de, par exemple la classe //​Message//,​ cliquez sur //New – Others - Java - JUnit Test Case//​((Cette partie du TD reprend en partie le tutoriel JUNIT : http://​www.junit.fr/​2011/​11/​20/​tutoriel-eclipse-junit-mon-premier-test-automatique/​)). {{ :​2014_2015:​s3:​concprogobjet:​td:​junittestcase.png?​direct&​200 |}} Dans le panneau qui s'​affiche {{ :​2014_2015:​s3:​concprogobjet:​td:​messagetest.png?​direct&​200 |}}+
           * Sélectionnez le bouton radio //New JUnit 4 test//.           * Sélectionnez le bouton radio //New JUnit 4 test//.
-          * Changez le dossier Source folder pour //​bus/​src/​test/​java//​.+          * Changez le dossier Source folder pour celui de tests
           * Nommez la classe ''​MessageTest''​.           * Nommez la classe ''​MessageTest''​.
           * Cochez les cases ''​setUp()''​ et ''​tearDown()''​.           * Cochez les cases ''​setUp()''​ et ''​tearDown()''​.
Line 201: Line 186:
           * Eclipse va remarquer que la bibliothèque de //JUnit// est absente du projet et vous propose d’ajouter automatiquement cette dernière au projet.           * Eclipse va remarquer que la bibliothèque de //JUnit// est absente du projet et vous propose d’ajouter automatiquement cette dernière au projet.
           * Dans le panneau qui apparaît, cliquez sur OK.           * Dans le panneau qui apparaît, cliquez sur OK.
-    -  Eclipse a maintenant créé automatiquement le squelette de la classe de test. Il ne reste plus alors qu’à remplir cette dernière.  +    -  ​{{fa>​arrow-circle-right?​24}} ​Eclipse a maintenant créé automatiquement le squelette de la classe de test. Il ne reste plus alors qu’à remplir cette dernière. ​**Voir un exemple de code ci-dessous.** 
-    - Dans le menu contextuel, cliquez sur //Run As – JUnit test//.+    - {{fa>​arrow-circle-right?​24}}  ​Dans le menu contextuel, cliquez sur //Run As – JUnit test//.
 Enfin, le premier rapport de tests s’affiche !  Enfin, le premier rapport de tests s’affiche ! 
 {{ :​2014_2015:​s3:​concprogobjet:​td:​testok.png?​direct&​200 |}} {{ :​2014_2015:​s3:​concprogobjet:​td:​testok.png?​direct&​200 |}}
- +   ​- ​{{fa>arrow-circle-right?24}} Visualiser ​la couverture de tests {{ :​2018_2019:​s3:​methodo:​td:​coverage.png?​direct&​300 |}} 
-</​panel>​ +
- +
- +
-<panel title="​IntelliJ" ​ > +
-    ​- ​Pour créer des tests sur votre classe //​Message//,​ suivez les instructions sous https://​www.jetbrains.com/​help/​idea/​2016.2/​creating-tests.html. La classe de test créée se trouve sous test/​java/​... +
-          * Cochez les cases ''​setUp()''​ ((est exécutée avant tout test)) et ''​tearDown()''​ ((est exécutée après tout test)). +
-    -  IntelliJ a maintenant créé automatiquement le squelette de la classe de test. Il ne reste plus alors qu’à remplir cette dernière. +
-</​panel>​ +
-</​accordion> +
- +
-  +
-   <​todo>​ Complétez la classe de Test à présent et l'​exécuter. </​todo>​ Voir un exemple de code ci-dessous. +
-   - <​todo>​ Vérifier ​la couverture de votre code (menu contextuel, ​coverage ​as) si vous êtes sous EclipseVous pouvez aussi les voir sous properties. </​todo> ​+
  
 Voici un exemple de code de test. Voici un exemple de code de test.
Line 244: Line 216:
  
  
 +
 +
 +==== Mise en place d'un programme principal préliminaire (10mn) ====
 +
 +{{fa>​arrow-circle-right?​24}} ​ Voici ce que devra faire a minima votre programme principal, pour cela retourner dans le fichier de test et ajouter un cas de test : "​testMonScenario.java" ​ ou des tests pour : 
 +  - créer un bus de nom "​Nice-Circulation",​
 +  - créer un message annonçant "une attente de 5mn"
 +  - créer un message annonçant "un accident"​
 +  - récupérer les messages sur le bus de nom "​Nice-Circulation",​
 +  - afficher le contenu des messages.
 +
 +
 +Ce programme ne peut pas tourner puisque quasi rien n'est implémenté,​ par contre vous pouvez vous aider de votre IDE pour qu'au moins il soit "​syntaxiquement"​ juste et créer les bonnes méthodes si elles n'​existent pas déjà, ou les appeler! ​
 +
 +A la fin de ce TD, évidemment,​ il fonctionnera.
  
 ====  Développement (20mn) ​ ==== ====  Développement (20mn) ​ ====
-  ​- Terminez la mise en oeuvre du bus en complétant les tests au fur et à mesure.+{{fa>​arrow-circle-right?​24}}  ​Terminez la mise en oeuvre du bus en complétant les tests au fur et à mesure.
  
  
-Pensez à tester : +{{fa>​arrow-circle-right?​24}}  ​Pensez à tester : 
   * Retrouver un bus de nom donné   * Retrouver un bus de nom donné
  
Line 263: Line 250:
 </​accordion>​ </​accordion>​
  
-===== EVALUATION de CE TD =====  
- 
-  - Le programme est fonctionnel et le scénario de base est bien réalisé. 
-  - Les modèles sont cohérents avec le code. 
  
-[[http://​jalon.unice.fr/​cours/​blay/​Cours-blay-20160929210709/​BoiteDepot-blay-20160929210839376812?​mode_etudiant=false|Jalon de dépôt pour Mme Blay-Fornarino : donner comme nom du dépot : Gr<​NumeroGroupe><​Noms des étudiants>​]] Pour les groupes de Mme Blay-Fornarino date limite 26 septembre minuit 
 ===== Je sais ===== ===== Je sais =====
    
2018_2019/s3/concprogobjet/td/s3atd1.txt · Last modified: 2018/09/06 22:05 by blay