Search code examples
javamavenseleniumselenium-webdriver

Maven BUILD SUCCESSFUL but no tests executed in Selenium


EDIT: I've uploaded the project to github for anyone who'd like to take a look https://github.com/hfunsh/test-automation.git

I have written a few tests in Selenium using Intellij, the scripts run successfully in the IDE, but when I try to run them from the console I get a "BUILD SUCCESSFUL" message but no test execution.

I'm able to run other Maven Junit projects from the console, so I know this is most likely a configuration issue with my pom file, but I can't figure it out.

Here is an example of one of the Java class names (containing the word Test)

/Users/ser/IdeaProjects/SeleniunTrainingII/src/test/java/com/selenium/tests/junit/tests/TestLoginAmazon.java

2nd EDIT: I've now run "mvn clean verify" as suggested

    INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building Selenium tests project 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ selenium-app ---
[INFO] 
[INFO] --- maven-failsafe-plugin:2.18.1:integration-test (default) @ selenium-app ---
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.2.1/maven-plugin-api-2.2.1.jar
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.2.1/maven-plugin-descriptor-2.2.1.jar
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.2.1/maven-artifact-2.2.1.jar
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.jar
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.2.1/maven-settings-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.2.1/maven-plugin-descriptor-2.2.1.jar (39 KB at 32.7 KB/sec)
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.2.1/maven-plugin-api-2.2.1.jar (13 KB at 10.2 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.2.1/maven-profile-2.2.1.jar
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.2.1/maven-artifact-manager-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.2.1/maven-settings-2.2.1.jar (48 KB at 40.5 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.2.1/maven-plugin-registry-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.2.1/maven-artifact-2.2.1.jar (79 KB at 64.3 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.2.1/maven-model-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.jar (153 KB at 123.5 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.2.1/maven-core-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.2.1/maven-profile-2.2.1.jar (35 KB at 27.6 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.2.1/maven-plugin-parameter-documenter-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.2.1/maven-artifact-manager-2.2.1.jar (66 KB at 52.7 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.2.1/maven-repository-metadata-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.2.1/maven-plugin-registry-2.2.1.jar (30 KB at 23.1 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.2.1/maven-error-diagnostics-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.2.1/maven-model-2.2.1.jar (86 KB at 66.2 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.2.1/maven-monitor-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.2.1/maven-repository-metadata-2.2.1.jar (26 KB at 19.3 KB/sec)
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/maven-toolchain/2.2.1/maven-toolchain-2.2.1.jar
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.2.1/maven-plugin-parameter-documenter-2.2.1.jar (22 KB at 16.6 KB/sec)
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.2.1/maven-error-diagnostics-2.2.1.jar (13 KB at 9.6 KB/sec)
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.2.1/maven-monitor-2.2.1.jar (11 KB at 7.6 KB/sec)
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-toolchain/2.2.1/maven-toolchain-2.2.1.jar (37 KB at 26.9 KB/sec)
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.2.1/maven-core-2.2.1.jar (174 KB at 126.2 KB/sec)
[INFO] No tests to run.
[WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent! The file encoding for reports output files should be provided by the POM property ${project.reporting.outputEncoding}.
[INFO] 
[INFO] --- maven-failsafe-plugin:2.18.1:verify (default) @ selenium-app ---
[INFO] No tests to run.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.536 s
[INFO] Finished at: 2016-01-14T10:10:47-05:00
[INFO] Final Memory: 11M/108M

EDIT: I've now added both the maven surefire AND failsafe plugins to my pom and it still isn't working.

Here is what my updated file looks like

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.selenium.test</groupId>
  <artifactId>selenium-app</artifactId>
  <packaging>pom</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>Selenium tests project</name>
  <description>Web Autotests simple project.</description>
  <url>http://maven.apache.org</url>

  <properties>
    <junit.version>4.11</junit.version>
    <testng.version>6.8.17</testng.version>
    <selenium.version>2.45.0</selenium.version>
    <compiler.version>1.7</compiler.version>
  </properties>


  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <source>${compiler.version}</source>
          <target>${compiler.version}</target>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.19.1</version>
        <configuration>
          <systemPropertyVariables>
            <propertyName>firefox</propertyName>
          </systemPropertyVariables>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-failsafe-plugin</artifactId>
        <version>2.18.1</version>
        <executions>
          <execution>
            <configuration>
              <forkCount>3</forkCount>
              <reuseForks>true</reuseForks>
              <argLine>-Xmx1024m -XX:MaxPermSize=256m</argLine>
              <testFailureIgnore>true</testFailureIgnore>
              <includes>
                <includesFile>**/*Test.java</includesFile>
              </includes>
            </configuration>
            <goals>
              <goal>integration-test</goal>
              <goal>verify</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>${junit.version}</version>
    </dependency>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>${testng.version}</version>
    </dependency>
    <dependency>
      <groupId>xml-apis</groupId>
      <artifactId>xml-apis</artifactId>
      <version>1.4.01</version>
    </dependency>
    <dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
      <version>${selenium.version}</version>
    </dependency>
  </dependencies>
</project>

Here is the output of my console as well as the POM file after running "mvn clean test" from the console.

[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] --------------------------------------------------------------
[INFO] Building Selenium tests project 1.0-SNAPSHOT
[INFO] --------------------------------------------------------------
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ selenium-app 
[INFO] Deleting   /Users/user/IdeaProjects/SeleniumTraining/target
[INFO] BUILD SUCCESS
[INFO] --------------------------------------------------------------    
[INFO] Total time: 0.350 s
[INFO] Finished at: 2016-01-13T17:07:22-05:00
[INFO] Final Memory: 6M/77M
[INFO] ------------------------

And my pom:

<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/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.selenium.test</groupId> 
    <artifactId>selenium-app</artifactId> 
    <packaging>pom</packaging> 
    <version>1.0-SNAPSHOT</version>  
    <name>Selenium tests project</name> 
    <description>Web Autotests simple project.</description> 
    <url>http://maven.apache.org</url>  
    <properties> 
        <junit.version>4.12</junit.version> 
        <testng.version>6.8.17</testng.version> 
        <selenium.version>2.45.0</selenium.version> 
        <compiler.version>1.7</compiler.version>
    </properties>  
    <build> 
        <plugins> 
            <plugin> 
                <groupId>org.apache.maven.plugins</groupId> 
                <artifactId>maven-compiler-plugin</artifactId> 
                <version>3.1</version> 
                <configuration> 
                    <source>1.8</source> 
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>  
    <dependencies> 
        <dependency> 
            <groupId>junit</groupId> 
            <artifactId>junit</artifactId> 
            <version>4.12</version>
        </dependency> 
        <dependency> 
            <groupId>org.testng</groupId> 
            <artifactId>testng</artifactId> 
            <version>${testng.version}</version>
        </dependency> 
        <dependency> 
            <groupId>xml-apis</groupId> 
            <artifactId>xml-apis</artifactId> 
            <version>1.4.01</version>
        </dependency> 
        <dependency> 
            <groupId>org.seleniumhq.selenium</groupId> 
            <artifactId>selenium-java</artifactId> 
            <version>2.48.0</version>
        </dependency>
    </dependencies>
</project> 

Solution

  • you need to add either maven-surefire-plugin or maven-failsafe-plugin to your POM and then run mvn clean test command and tests should start executing

    Sample excerpt:

    <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-failsafe-plugin</artifactId>
                    <version>2.18.1</version>
                    <executions>
                        <execution>
                            <configuration>
                                <forkCount>3</forkCount>
                                <reuseForks>true</reuseForks>
                                <argLine>-Xmx1024m -XX:MaxPermSize=256m</argLine>
                                <testFailureIgnore>true</testFailureIgnore>
                                <includes>
                                    <includesFile>**/*Test.java</includesFile>
                                </includes>
                            </configuration>
                            <goals>
                                <goal>integration-test</goal>
                                <goal>verify</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
    

    EDIT: Your package name in the TestLogin.java was wrong. EDIT: Also your packaging in POM.xml is set to pom..You need to set it to jar