IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Maven Java Discussion :

Lancement des tests / Cycle de vie


Sujet :

Maven Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2010
    Messages : 75
    Par défaut Lancement des tests / Cycle de vie
    Bonjour,

    Malgré le tutoriel, je n'arrive pas à comprendre comment fonctionne les "goals" maven.

    Quand je fais : mvn clean install, les tests doivent-ils être lancés ?
    Si je lis ce document, je comprends que oui pourtant aucun de mes tests ne sont lancés.

    Merci pour votre aide sur cette question qui peut paraître basique...

    Elodie

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    394
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 394
    Par défaut
    Bonjour,

    Voici le cycle de vie maven : http://maven.apache.org/guides/intro...lifecycle.html (Section "Lifecycle Reference"). Comme tu peux le voir dans ce tableau, la phase "test" est avant le phase "install". Donc si tu exécutes install, maven exécutera test auparavant.

    Peux tu nous montrer ce que tu as fait ? As-tu ajouté junit dans les "depencies" dans ton pom.xml ? As-tu bien mis tes classes de test dans "src/test/java" ?

    Romain.

  3. #3
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Comme l'a dit rg77140, par défaut Maven lancera toujours les tests. S'ils ne sont pas lancés, cela peut être dû à l'un de ces faits :

    • Le code de test n'est pas dans src/test/java (convention Maven) et rien n'est configuré dans le pom.xml
    • Aucune dépendance JUnit (ou TestNG) n'est déclarée dans le pom
    • Pas de tests
    • Les tests sont écrits pour JUnit 4.x mais le runner configuré est JUnit 3 (qui ne comprend pas les annotations par ex.)
    • autre chose ?


    Bref, le mieux c'est de nous montrer ton pom.xml, et éventuellement de lancer la commande mvn test et de voir ce que disent les logs...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2010
    Messages : 75
    Par défaut
    Bonjour,

    Je ne respecte pas la convention Maven, et mes tests sont dans NomProjet/test ce que j'ai précisé dans <testSourceDirectory> au niveau de mon projet.

    J'ai bien une dépendance vers JUnit ainsi que le plugin surefire-maven-plugin.

    Voilà mon pom.xml :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     
    	<modelVersion>4.0.0</modelVersion>
    	<groupId>com.solutions.toutou.titi</groupId>
    	<artifactId>Parent</artifactId>
    	<version>1.0.0-SNAPSHOT</version>
    	<packaging>pom</packaging>
     
    	<modules>
    		<module>../com.solutions.toutou.titi</module>
    	</modules>
     
    	<properties>
    		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    		<tycho-version>0.16.0</tycho-version>  
    	</properties>
     
    	<repositories>  
    		<repository>
    			<id>thingml</id>
    			<name>Maven Repository for Eclipse e4</name>
    			<url>http://maven.thingml.org/thirdparty</url>
    		</repository>
    		<repository>  
    			<id>juno</id>  
    			<layout>p2</layout>  
    			<url>http://download.eclipse.org/releases/juno/</url>  
    		</repository>	
    	</repositories>  
     
    	<build>
    		<plugins>
    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-install-plugin</artifactId>
    				<version>2.4</version>
    				<configuration>
    					<source>1.7</source>
    					<target>1.7</target>
    				</configuration>
    			</plugin>
    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-surefire-plugin</artifactId>
    				<version>2.13</version>
    				<configuration>
    					<source>1.7</source>
    					<target>1.7</target>
    					<testSourceDirectory>${basedir}/test/</testSourceDirectory>
    				</configuration>
    			</plugin>
    			<plugin>  
    				<!-- enable tycho build extension -->  
    			  	<groupId>org.eclipse.tycho</groupId>  
    			  	<artifactId>tycho-maven-plugin</artifactId>  
    			 	<version>${tycho-version}</version>  
    			  	<extensions>true</extensions>  
    			</plugin> 
    			<plugin>  
    			 	<groupId>org.eclipse.tycho</groupId>  
    			 	<artifactId>target-platform-configuration</artifactId>  
    			 	<version>${tycho-version}</version>  
    			 	<configuration>  
    			  		<environments>  
    			   			<environment>  
    			    			<os>win32</os>  
    			    			<ws>win32</ws>  
    			    			<arch>x86_64</arch>  
    			   			</environment>  
    			  		</environments>  
    			 	</configuration>  
    			</plugin>
    		</plugins>
    	</build>
     
    	<dependencies>
    		<dependency>
    			<groupId>junit</groupId>
    			<artifactId>junit</artifactId>
    			<version>4.11</version>
    			<type>jar</type>
    			<scope>test</scope>
    			<optional>true</optional>
    		</dependency>
    		<dependency>
    			<!-- for 
    			org.osgi.framework;
    			org.osgi.framework.BundleActivator;
    			org.osgi.framework.BundleContext;
    			-->
    			<groupId>org.osgi</groupId>
    			<artifactId>org.osgi</artifactId>
    			<version>3.0.0</version>
    		</dependency>
    	</dependencies>	
    </project>
    Voici le pom du module titi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <?xml version="1.0" encoding="UTF-8"?>
    <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" 
    	xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     
    	<modelVersion>4.0.0</modelVersion>
    	<artifactId>com.solutions.toutou.titi</artifactId>
    	<packaging>eclipse-plugin</packaging>
     
    	<parent>
    		<groupId>com.solutions.toutou.titi</groupId>
    		<artifactId>Parent</artifactId>
    		<version>1.0.0-SNAPSHOT</version>
    		<relativePath>../com.solutions.toutou.parent/pom.xml</relativePath>
    	</parent>
     
        <build>
    		<sourceDirectory>src</sourceDirectory>
    		<testSourceDirectory>test</testSourceDirectory>
    	</build>
     
    </project>
    Je viens de relancer mon Eclipse, refait un clean, etc.
    Et si je lance sur mon projet titi > Run as configuration > JUnit test en cherchant les tests dans mon tout le projet titi avec un Runner JUnit 4, il me lance bien les deux tests que j'ai.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2010
    Messages : 75
    Par défaut
    Si je regarde ma tâche "clean install" de Maven :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    [INFO] ------------------------------------------------------------------------
    [INFO] Building com.solutions.toutou.titi 1.0.0-SNAPSHOT
    [INFO] ------------------------------------------------------------------------
    [INFO] 
    [INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ com.solutions.toutou.titi ---
    [INFO] Deleting C:\Users\Elodie\Documents\projets\ECLIPSE\workspaces\...\target
    [INFO] 
    [INFO] --- tycho-packaging-plugin:0.16.0:build-qualifier (default-build-qualifier) @ com.solutions.toutou.titi ---
    [INFO] 
    [INFO] --- tycho-packaging-plugin:0.16.0:validate-id (default-validate-id) @ com.solutions.toutou.titi ---
    [INFO] 
    [INFO] --- tycho-packaging-plugin:0.16.0:validate-version (default-validate-version) @ com.solutions.toutou.titi ---
    [INFO] 
    [INFO] --- maven-resources-plugin:2.4.3:resources (default-resources) @ com.solutions.toutou.titi ---
    [INFO] Using 'UTF-8' encoding to copy filtered resources.
    [INFO] skip non existing resourceDirectory C:\Users\Elodie\Documents\projets\ECLIPSE\workspaces\...\src\main\resources
    [INFO] 
    [INFO] --- tycho-compiler-plugin:0.16.0:compile (default-compile) @ com.solutions.toutou.titi ---
    [INFO] Compiling 7 source files to C:\Users\Elodie\Documents\projets\ECLIPSE\workspaces\...\target\classes
    [INFO] 
    [INFO] --- maven-resources-plugin:2.4.3:testResources (default-testResources) @ com.solutions.toutou.titi ---
    [INFO] Using 'UTF-8' encoding to copy filtered resources.
    [INFO] skip non existing resourceDirectory C:\Users\Elodie\Documents\projets\ECLIPSE\workspaces\...\src\test\resources
    [INFO] 
    [INFO] --- tycho-packaging-plugin:0.16.0:package-plugin (default-package-plugin) @ com.solutions.toutou.titi ---
    [INFO] Building jar: C:\Users\Elodie\Documents\projets\ECLIPSE\workspaces\...\target\com.solutions.toutou.titi-1.0.0-SNAPSHOT.jar
    [INFO] 
    [INFO] --- tycho-p2-plugin:0.16.0:p2-metadata-default (default-p2-metadata-default) @ com.solutions.toutou.titi ---
    [INFO] 
    [INFO] --- maven-install-plugin:2.4:install (default-install) @ com.solutions.toutou.titi ---
    [INFO] Installing C:\Users\Elodie\Documents\projets\ECLIPSE\workspaces\...\target\com.solutions.toutou.titi-1.0.0-SNAPSHOT.jar to D:\.m2\repository\com\solutions\toutou\titi\com.solutions.toutou.titi\1.0.0-SNAPSHOT\com.solutions.toutou.titi-1.0.0-SNAPSHOT.jar
    [INFO] Installing C:\Users\Elodie\Documents\projets\ECLIPSE\workspaces\...\com.solutions.toutou.titi\pom.xml to D:\.m2\repository\com\solutions\toutou\titi\com.solutions.toutou.titi\1.0.0-SNAPSHOT\com.solutions.toutou.titi-1.0.0-SNAPSHOT.pom
    [INFO] Installing C:\Users\Elodie\Documents\projets\ECLIPSE\workspaces\...\target\p2content.xml to D:\.m2\repository\com\solutions\toutou\titi\com.solutions.isoneo.citrus\1.0.0-SNAPSHOT\com.solutions.isoneo.citrus-1.0.0-SNAPSHOT-p2metadata.xml
    [INFO] Installing C:\Users\Elodie\Documents\projets\ECLIPSE\workspaces\...\target\p2artifacts.xml to D:\.m2\repository\com\solutions\toutou\titi\com.solutions.toutou.titi\1.0.0-SNAPSHOT\com.solutions.toutou.titi-1.0.0-SNAPSHOT-p2artifacts.xml
    [INFO] 
    [INFO] --- tycho-p2-plugin:0.16.0:update-local-index (default-update-local-index) @ com.solutions.toutou.titi ---
    [INFO]
    Je ne vois à aucun moment que les tests sont lancés... ?

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    394
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 394
    Par défaut
    Bonsoir,

    Je ne vois rien d'aberrant comme ça, mais il y a surement quelque chose qui cloche...

    Tu devrais y aller par étape... Créer un seul module en respectant l'architecture de base maven, ensuite changer le répertoire de test, ensuite créer un module et un pom parent, ...

    Au passage tes groupid et artefactid sont pas très homogènes...

    Premier projet :
    <groupId>com.solutions.toutou.titi</groupId>
    <artifactId>Parent</artifactId>

    Deuxième projet (le groupid étant hérité du parent) :
    <groupId>com.solutions.toutou.titi</groupId><artifactId>com.solutions.toutou.titi</artifactId>

    L'artefactid devrait être le nom de ton module (comme tu l'as fait pour "Parent").

    Romain.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lancement des tests gwt avec un projet full maven
    Par shaoz dans le forum GWT et Vaadin
    Réponses: 1
    Dernier message: 30/07/2013, 15h17
  2. [JUnit] problème de lancement des tests Junit
    Par zizo08 dans le forum Tests et Performance
    Réponses: 0
    Dernier message: 16/12/2010, 09h56
  3. [Observateur] Prog. évènementielle, cycle de vie différent de la présentation et des données ?
    Par thomine dans le forum Design Patterns
    Réponses: 6
    Dernier message: 04/05/2009, 13h38
  4. Cycle de vie des classes Action ?
    Par guillaume06 dans le forum Struts 1
    Réponses: 3
    Dernier message: 04/10/2007, 09h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo