Build is Success but No sources to compile

匿名 (未验证) 提交于 2019-12-03 08:52:47

问题:

Maven test output in the Eclipse console:

[INFO] Scanning for projects...     [WARNING]      [WARNING] Some problems were encountered while building the effective model for Mabi:Mabi:jar:0.0.1-SNAPSHOT     [WARNING] 'dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique: org.seleniumhq.selenium:selenium-java:jar -> duplicate declaration of version 2.45.0 @ line 20, column 21     [WARNING] 'build.plugins.plugin.(groupId:artifactId)' must be unique but found duplicate declaration of plugin org.apache.maven.plugins:maven-surefire-plugin @ line 74, column 10     [WARNING]      [WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.     [WARNING]      [WARNING] For this reason, future Maven versions might no longer support building such malformed projects.     [WARNING]      [INFO]                                                                              [INFO] ------------------------------------------------------------------------     [INFO] Building Mabi 0.0.1-SNAPSHOT     [INFO] ------------------------------------------------------------------------     [INFO]      [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ Mabi ---     [WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!     [INFO] skip non existing resourceDirectory E:\workspace\Mabi\src\com.TestCase     [INFO]      [INFO] --- maven-compiler-plugin:3.5:compile (default-compile) @ Mabi ---     [INFO] Changes detected - recompiling the module!     [WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!     [INFO] Compiling 166 source files to E:\workspace\Mabi\target\classes     [INFO]      [INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ Mabi ---     [WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!     [INFO] skip non existing resourceDirectory E:\workspace\Mabi\src\test\resources     [INFO]      [INFO] --- maven-compiler-plugin:3.5:testCompile (default-testCompile) @ Mabi ---     [INFO] No sources to compile     [INFO]      [INFO] --- maven-surefire-plugin:2.19.1:test (default-test) @ Mabi ---     [INFO] No tests to run.     [INFO] ------------------------------------------------------------------------     [INFO] BUILD SUCCESS     [INFO] ------------------------------------------------------------------------     [INFO] Total time: 7.287 s     [INFO] Finished at: 2016-03-23T11:32:40+05:30     [INFO] Final Memory: 21M/283M     [INFO] ------------------------------------------------------------------------ 

Above image shows the directory of my project but when I run the project via Maven it gives me the above result without running the test. Looking forward for some accurate solutions.

And this is what my POM.XML 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/xsd/maven-4.0.0.xsd">   <modelVersion>4.0.0</modelVersion>   <groupId>Mabi</groupId>   <artifactId>Mabi</artifactId>   <version>0.0.1-SNAPSHOT</version>   <dependencies>     <dependency>     <groupId>com.relevantcodes</groupId>     <artifactId>extentreports</artifactId>     <version>2.40.2</version>      </dependency>                      <dependency>                           <groupId>org.seleniumhq.selenium</groupId>                                           <artifactId>selenium-java</artifactId>                                           <version>2.45.0</version>                                        </dependency>                                   <dependency>                           <groupId>org.testng</groupId>                                            <artifactId>testng</artifactId>                                          <version>6.8</version>                                                                           </dependency>               </dependencies>    <build>     <sourceDirectory>src</sourceDirectory>      <resources>       <resource>         <directory>src/com.TestCase</directory>         <includes>         <include>**/com.*TestCase.java</include>         </includes>         </resource>          </resources>      <plugins>       <plugin>         <artifactId>maven-compiler-plugin</artifactId>         <version>3.5</version>         <configuration>           <source/>           <target/>         </configuration>       </plugin>      <plugin>           <groupId>org.apache.maven.plugins</groupId>         <artifactId>maven-surefire-plugin</artifactId>             <version>2.19.1</version>                 <inherited>true</inherited>             <configuration>                 <suiteXmlFile>testng.xml</suiteXmlFile>             </configuration>     </plugin>  </plugins>  </build> </project> 

回答1:

Maven is all about "convention over configuration" idiom. In order that maven-surefire-plugin will run your testcases it expects to find it under src/test/java, hence, you should follow the maven's standard directory layout and put all your test cases under src/test/java.



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!