User Tools

Site Tools


2016_2017:s3:concprogobjet:td:td1

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
2016_2017:s3:concprogobjet:td:td1 [2016/09/09 09:00]
cecchinel
2016_2017:s3:concprogobjet:td:td1 [2016/09/09 15:34]
cecchinel [Un projet sous tests (15mn)]
Line 72: Line 72:
 ==== Analyse : 15mn  ==== ==== Analyse : 15mn  ====
  
-  - Sous [[:​modelio|MODELIO]],​ commencer par créer un projet ​+  - Sous [[:​modelio|MODELIO]],​ commencer par créer un projet ​(Attention à bien sélectionner **Java Project**)
   - Définissez un diagramme de classes de niveau Analyse.   - Définissez un diagramme de classes de niveau Analyse.
   - Définissez,​ par cas d'​utilisation,​ un diagramme de séquence élémentaire mettant en jeu les objets de votre système **et compléter** votre diagramme de classes au fur et à mesure. Pour cela utilisez, évidemment des lignes de vie qui font référence à des classes et les messages qui vous permettent d'​identifier les méthodes et mettre à jour vos diagrammes de classes.   - Définissez,​ par cas d'​utilisation,​ un diagramme de séquence élémentaire mettant en jeu les objets de votre système **et compléter** votre diagramme de classes au fur et à mesure. Pour cela utilisez, évidemment des lignes de vie qui font référence à des classes et les messages qui vous permettent d'​identifier les méthodes et mettre à jour vos diagrammes de classes.
Line 142: Line 142:
 Aujourd'​hui nous faisons le choix de générer les codes puis de travailler ces derniers sans chercher, au moins pour l'​instant,​ à maintenir les modèles en cohérence. Aujourd'​hui nous faisons le choix de générer les codes puis de travailler ces derniers sans chercher, au moins pour l'​instant,​ à maintenir les modèles en cohérence.
  
-  - Générez les codes (voir [[https://​mbf-iut.i3s.unice.fr/​doku.php?​id=modelio#​generer_les_codes|ici]] et choisissez comme répertoire de génération celui sous src/​main/​java+  - Générez les codes (voir [[https://​mbf-iut.i3s.unice.fr/​doku.php?​id=modelio#​generer_les_codes|ici]] et choisissez comme répertoire de génération celui sous src/​main/​java/​fr/​unice/​iut/​info/​coo
   -       - Sélectionner votre diagramme de classe en conception;   -       - Sélectionner votre diagramme de classe en conception;
       - Vérifier que vous avez bien toutes les classes prévues; ​       - Vérifier que vous avez bien toutes les classes prévues; ​
-      - Préciser si vous voulez travailler avec des vecteurs ou autres (Réfléchissez!!),​ **et** **préciser bien comme répertoire pour la génération votre répertoire ​src sous Eclipse** {{ :​2014_2015:​s3:​concprogobjet:​td:​generationcodejava.png?​direct&​200 |}}+      - Préciser si vous voulez travailler avec des vecteurs ou autres (Réfléchissez!!),​ **et** **préciser bien comme répertoire pour la génération votre répertoire** ​(si besoin, spécifiez le nom du package fr.unice.iut.info.coo directement dans le code généré) ​{{ :​2014_2015:​s3:​concprogobjet:​td:​generationcodejava.png?​direct&​200 |}}
   - Retourner sous IntelliJ. Si votre répertoire est mal organisé (nouveau package par exemple, déplacer simplement les codes comme vous le voulez, par glisser/​coller.)   - Retourner sous IntelliJ. Si votre répertoire est mal organisé (nouveau package par exemple, déplacer simplement les codes comme vous le voulez, par glisser/​coller.)
-  - Corriger vos codes pour qu'ils soient "​compilables", ​en particulier en ajoutant le fichier ​{{:​javadesigner.jar|}} comme une library du projet, afin que les annotations de Modelio soient comprises.+  - Corriger vos codes pour qu'ils soient "​compilables" ​:  
 +          -  Afin que les annotations de Modelio soient comprisesajouter ​{{:​javadesigner.jar|}} comme une library du projet ​ 
 +                - 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 182: Line 185:
 */ */
     - 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/​...     - 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()''​ et ''​tearDown()''​.+          * 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. ​     -  IntelliJ a maintenant créé automatiquement le squelette de la classe de test. Il ne reste plus alors qu’à remplir cette dernière. ​
 +    - Par exemple
 +     <​code java>
 +        protected Message mToTest;
 + protected String content;
 +
 + @Before
 + public void setUp() throws Exception {
 + content = "mon message";​
 + mToTest = new Message(content,​b);​
 + }
 +
 + @Test
 + public void setContenu() throws Exception {
 + String nv = "​newValue";​
 + mToTest.setContenu("​newValue"​);​
 + assertEquals("​ message contents is as expected",​nv,​mToTest.getContenu());​
 + assertFalse("​ message contents has been modified",​ mToTest.getContenu().equals(content));​
 + }
 +
 +     </​code>​
     - Dans le menu contextuel, cliquez sur //Run As – JUnit test//.     - 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 ! 
Line 212: Line 235:
 <box round rgb(255,​204,​153) rgb(255,​255,​204) 97%|Je sais  :   > <box round rgb(255,​204,​153) rgb(255,​255,​204) 97%|Je sais  :   >
   * Créer un projet sous un IDE avancé, et le structurer correctement.   * Créer un projet sous un IDE avancé, et le structurer correctement.
-  * Générer ​le code à partir d'un modèle de classes en UML. +  * (Rappel) Faire correspondre ​le code java et un modèle de classes en UML. 
-  * Structurer mon projet pour intégrer les tests unitaires.  +  * Mettre en place des tests unitaires.  
-  * Utiliser ​Eclipse ​pour améliorer mon développement en utilisant les outils d'aide au développement.+  * Utiliser ​un IDE pour améliorer mon développement en utilisant les outils d'aide au développement.
 </​box>​ </​box>​
  
2016_2017/s3/concprogobjet/td/td1.txt · Last modified: 2016/09/29 21:15 by blay