You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Andreas Gudian (JIRA)" <ji...@codehaus.org> on 2014/03/08 17:50:59 UTC

[jira] (SUREFIRE-1024) "verify" goal ignores "dependenciesToScan" parameter when checking tests existence

     [ https://jira.codehaus.org/browse/SUREFIRE-1024?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andreas Gudian updated SUREFIRE-1024:
-------------------------------------

    Fix Version/s:     (was: 2.17)
                   2.18

> "verify" goal ignores "dependenciesToScan" parameter when checking tests existence
> ----------------------------------------------------------------------------------
>
>                 Key: SUREFIRE-1024
>                 URL: https://jira.codehaus.org/browse/SUREFIRE-1024
>             Project: Maven Surefire
>          Issue Type: Bug
>          Components: Maven Failsafe Plugin
>    Affects Versions: 2.16
>            Reporter: Dmitry Kholodilov
>             Fix For: 2.18
>
>         Attachments: verify_goal_ignores_dependenciesToScan_parameter_when_checking_tests_existence.patch
>
>
> Consider Maven project with packaging=pom that executes tests from some external jar:
> {code:xml}
> <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>test</groupId>
>     <artifactId>test</artifactId>
>     <version>test</version>
>     <packaging>pom</packaging>
>     <dependencies>
>         <dependency>
>             <groupId>test</groupId>
>             <artifactId>tests-jar</artifactId>
>             <version>1.0</version>
>             <classifier>tests</classifier>
>         </dependency>
>         <dependency>
>             <groupId>org.testng</groupId>
>             <artifactId>testng</artifactId>
>             <version>6.8</version>
>         </dependency>
>     </dependencies>
>     <build>
>                 <plugins>
>                     <plugin>
>                         <artifactId>maven-failsafe-plugin</artifactId>
>                         <version>2.17-SNAPSHOT</version>
>                         <configuration>
>                             <dependenciesToScan>
>                                 <dependency>test:tests-jar</dependency>
>                             </dependenciesToScan>
>                         </configuration>
>                         <executions>
>                             <execution>
>                                 <id>integration-test</id>
>                                 <phase>integration-test</phase>
>                                 <goals>
>                                     <goal>integration-test</goal>
>                                 </goals>
>                             </execution>
>                             <execution>
>                                 <id>verify</id>
>                                 <phase>verify</phase>
>                                 <goals>
>                                     <goal>verify</goal>
>                                 </goals>
>                             </execution>
>                         </executions>
>                     </plugin>
>                 </plugins>
>     </build>
> </project>
> {code}
> (real use case is execution of prebuilt end-to-end tests of some system after its deployment)
> When we run `mvn clean verify` on such project, failsafe plugin's "verify" goal reports the following:
> {noformat}
> [INFO] --- maven-failsafe-plugin:2.16:verify (verify) @ test ---
> [INFO] No tests to run.
> {noformat}
> Consequently, even if there are test failures, build success is reported.
> The reason of such behavior is that VerifyMojo ignores "dependenciesToScan" parameter. So, the fix is easy - check its existence along with "testClassesDirectory" existence, the same way as implemented in AbstractSurefireMojo.
> The patch in attachment includes integration test that checks for build failure when there is failed test from dependency jar.



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)