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 :

Tests Selenium non lancés avec Maven


Sujet :

Maven Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Tests Selenium non lancés avec Maven
    Bonjour,

    J'aimerais lancer des tests d'intégration Selenium Web Driver avec Maven.
    Pour cela, j'utilise le plugin Failsafe.

    Mais les tests d'intégration ne se lancent jamais, quel que soit la phase (integration-test, verify, install). Alors que les tests unitaires se lancent correctement.

    Voici l'arborescence du projet :
    -- projet
    ---- projet-dao
    ---- projet-service
    ---- projet-web

    projet - 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
    <build>
    	<pluginManagement>
    		<plugins>
    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-surefire-plugin</artifactId>
    				<version>2.12.4</version>
    				<configuration>
    					<includes>
    						<include>**/unit/*.java</include>
    					</includes>
    				</configuration>
    			</plugin>
    		</plugin>
    	</pluginManagement>
    </build>
    projet-web - 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
    <build>
    	<plugins>
    		<plugin>
    			<groupId>org.apache.maven.plugins</groupId>
    			<artifactId>maven-failsafe-plugin</artifactId>
    			<version>2.12.4</version>
    			<configuration>
    				<includes>
    					<include>**/integration/*.java</include>
    				</includes>
    			</configuration>
    			<executions>
    				<execution>
    					<id>integration-test</id>
    					<goals>
    						<goal>integration-test</goal>
    					</goals>
    				</execution>
    				<execution>
    					<id>verify</id>
    					<goals>
    						<goal>verify</goal>
    					</goals>
    				</execution>
    			</executions>
    		</plugin>
    	</plugins>
    </build>
    Les tests se situent bien dans le dossier src/test/java.

    J'ai testé sans la partie <configuration> avec la configuration de base du plugin, en indiquant explicitement la classe Java, etc. Rien n'y fait.

    Code TestIT.java
    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
    package projet.test.integration;
     
    import org.openqa.selenium.By;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.WebElement;
    import org.openqa.selenium.firefox.FirefoxDriver;
    import org.openqa.selenium.support.ui.ExpectedCondition;
    import org.openqa.selenium.support.ui.WebDriverWait;
     
    public class TestIT {
    	public static void main(String[] args) {
    		WebDriver driver = new FirefoxDriver();
    		driver.get("http://www.google.com");
    		WebElement element = driver.findElement(By.name("q"));
    		element.sendKeys("Cheese!");
    		element.submit();
    		System.out.println("Page title is: " + driver.getTitle());
    		(new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>() {
                public Boolean apply(WebDriver d) {
                    return d.getTitle().toLowerCase().startsWith("cheese!");
                }
            });
    		System.out.println("Page title is: " + driver.getTitle());
    		driver.quit();
    	}
    }
    Pourtant, le test fonctionne bien si je le lance depuis Eclipse directement avec Run.

    Résultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Page title is: Google
    Page title is: cheese! - Recherche Google
    Comme si le plugin ne voyait pas mes tests.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    [INFO] [failsafe:integration-test {execution: integration-test}]
    [INFO] Failsafe report directory: C:\workspace\cvtheque-3.0\cvtheque-web\target\failsafe-reports
     
    -------------------------------------------------------
    TESTS
    -------------------------------------------------------
    Results :
    Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
     
    [WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
    Une idée ?

    Merci.

  2. #2
    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 : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Bonjour,

    Ta configuration semble correcte, du moins à première vue. Toutefois, ton test contient une méthode public static void main(). Or, le plugin failsafe s'attend à un test JUnit ou TestNG. Donc écris plutôt ceci :

    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
    public class TestIT {
     
        @Test
        public void mon_test {
            WebDriver driver = new FirefoxDriver();
            driver.get("http://www.google.com");
            WebElement element = driver.findElement(By.name("q"));
            element.sendKeys("Cheese!");
            element.submit();
            System.out.println("Page title is: " + driver.getTitle());
            (new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>() {
                public Boolean apply(WebDriver d) {
                    return d.getTitle().toLowerCase().startsWith("cheese!");
                }
            });
            System.out.println("Page title is: " + driver.getTitle());
            driver.quit();
        }
    }
    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

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Que dire de plus ! Merci, le problème vient bien de là.

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

Discussions similaires

  1. Test unitaire des ejb avec maven sous EAP6
    Par Cafeinoman dans le forum Wildfly/JBoss
    Réponses: 2
    Dernier message: 26/02/2014, 15h34
  2. Test Selenium avec Joomla
    Par minililypuce dans le forum Test
    Réponses: 3
    Dernier message: 09/11/2009, 22h19
  3. sqlplus lancé avec un user non "dba"
    Par jokos2000 dans le forum Administration
    Réponses: 11
    Dernier message: 30/09/2009, 10h40
  4. Test OK avec maven 2.0.4, mais pas avec 2.0.6 ni 2.0.7
    Par gifffftane dans le forum Maven
    Réponses: 6
    Dernier message: 03/07/2007, 14h58
  5. la couverture des tests avec maven
    Par adilo dans le forum Qualimétrie
    Réponses: 4
    Dernier message: 26/07/2006, 08h41

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