Maven跳过测试
Maven跳过测试
参考
http://maven.apache.org/plugins/maven-resources-plugin/testResources-mojo.html
http://maven.apache.org/plugins/maven-compiler-plugin/testCompile-mojo.html
http://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html
| boolean | - | Set this to "true" to bypass unit tests entirely. Its use is NOT RECOMMENDED, especially if you enable it using the "maven.test.skip" property, because maven.test.skip disables both running the tests and compiling the tests. Consider using the skipTests parameter instead. Default value is: false. User property is: maven.test.skip. | |
|---|---|---|---|
| boolean | 2.4 | Set this to "true" to skip running tests, but still compile them. Its use is NOT RECOMMENDED, but quite convenient on occasion. Failsafe plugin deprecated the parameter skipTests and the parameter will be removed in Failsafe 3.0.0 as it is a source of conflicts between Failsafe and Surefire plugin. Default value is: false. User property is: skipTests. |
环境
E:\mozq\demo_project\shiro>mvn -v
Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-05T03:00:29+08:00)
Maven home: D:\tools\maven\apache-maven-3.6.1\bin\..
Java version: 1.8.0_191, vendor: Oracle Corporation, runtime: D:\tools\jdk\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
案例一 跳过运行测试和编译测试
配置
<maven.test.skip>true</maven.test.skip> 跳过运行测试,测试资源,测试代码编译
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<!--
这个属性被3个插件使用,跳过testResources,testCompile,test。不处理测试,会快一点。
maven-resources-plugin:3.1.0:testResources
maven-compiler-plugin:3.8.1:testCompile
maven-surefire-plugin:2.22.2:test
-->
<maven.test.skip>true</maven.test.skip>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
运行结果
[INFO] --- maven-resources-plugin:3.1.0:testResources (default-testResources) @ http_01 ---
[INFO] Not copying test resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ http_01 ---
[INFO] Not compiling test sources
[INFO]
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ http_01 ---
[INFO] Tests are skipped.
案例二 只跳过运行测试
配置
<skipTests>true</skipTests> 只跳过运行测试,不跳过测试资源和测试代码编译。
<properties>
<skipTests>true</skipTests>
<!--<maven.test.skip>true</maven.test.skip>-->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>6</maven.compiler.source>
<maven.compiler.target>6</maven.compiler.target>
<spring.version>4.3.2.RELEASE</spring.version>
<mybatis.version>3.2.6</mybatis.version>
</properties>
<build>
<!-- 资源文件 -->
<resources>
<resource>
<directory>src/main/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<!-- 插件jetty tomcat -->
<plugins>
<!-- 配置jetty运行方式 -->
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.3.0.M2</version>
<configuration>
<webAppConfig>
<contextPath>/xinhekqsys</contextPath>
</webAppConfig>
<httpConnector>
<port>8081</port>
<idleTimeout>10000</idleTimeout>
</httpConnector>
</configuration>
</plugin>
<!-- maven项目在tomcat下运行的配制文件 -->
<!-- 配置tomcat运行方式 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<!-- 注意tomcat7此处的url -->
<url>http://localhost:8080/manager/text</url>
<!-- 此处的名字必须和setting.xml中配置的ID一致 -->
<server>tomcat</server>
<!-- 此处的名字是项目发布的工程名 -->
<path>/xinhekqsys</path>
</configuration>
</plugin>
<!-- <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId>
<version>2.4</version> <configuration> <webResources> <resource> <directory>src/main/webapp/WEB-INF</directory>
</resource> </webResources> </configuration> </plugin> -->
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<!-- <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId>
<version>2.4</version> <configuration> <webResources> <resource> <directory>src/main/webapp/WEB-INF</directory>
<directory>src/main/webapp</directory> </resource> </webResources> </configuration>
</plugin> -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>${project.build.sourceEncoding}</encoding>
<compilerArguments>
<verbose /> <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar</bootclasspath>
</compilerArguments>
</configuration>
</plugin>
</plugins>
<!-- 最终项目打包包名 -->
<finalName>handordering</finalName>
</build>
运行结果
<skipTests>true</skipTests>
# 没有跳过测试资源
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ handordering ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory E:\mozq\02 project\handordering\src\test\resources
[INFO]
# 没有跳过测试代码编译
[INFO] --- maven-compiler-plugin:3.6.0:testCompile (default-testCompile) @ handordering ---
[INFO] No sources to compile
[INFO]
# 跳过了运行测试
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ handordering ---
[INFO] Tests are skipped.
<maven.test.skip>true</maven.test.skip>
# 跳过了测试资源
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ handordering ---
[INFO] Not copying test resources
[INFO]
# 跳过了测试代码编译
[INFO] --- maven-compiler-plugin:3.6.0:testCompile (default-testCompile) @ handordering ---
[INFO] Not compiling test sources
[INFO] No sources to compile
[INFO]
# 跳过了运行测试
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ handordering ---
[INFO] Tests are skipped.
案例三 插件中配置跳过
插件和用户属性中同时对是否跳过测试进行配置,会以插件中为准。但是当跳过了测试资源和测试代码编译,又设置不跳过运行测试没有意义,因为此时不会生成测试代码。
配置
<properties>
<!-- 配置了跳过测试用户属性 -->
<maven.test.skip>true</maven.test.skip>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<!-- 插件中配置不跳过运行测试,以插件中配置为准。
当跳过了测试资源和测试代码编译,又设置不跳过运行测试没有意义,因为此时不会有测试代码来运行。
-->
<configuration>
<skip>false</skip>
</configuration>
</plugin>
</plugins>
</build>
运行结果
# 跳过了测试资源
[INFO] --- maven-resources-plugin:3.1.0:testResources (default-testResources) @ http_01 ---
[INFO] Not copying test resources
# 跳过了测试代码编译
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ http_01 ---
[INFO] Not compiling test sources
# 没有跳过运行测试,但是因为没有编译的测试代码,打印了没有测试需要运行。
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ http_01 ---
[INFO] No tests to run.
Maven跳过测试的更多相关文章
- maven 跳过测试 打包 及上传命令
[main] ERROR org.apache.maven.cli.MavenCli - Failed to execute goal org.apache.maven.plugins:maven-s ...
- Maven 跳过测试目录
在命令行使用 mvn install -Dmaven.skipTests 或 mvn install -Dmaven.test.skip=true 或在pom.xml设置 <build> ...
- maven跳过测试打包
1.在执行run as时候加上参数: clean install compile -Dmaven.test.skip=true 2.在pom文件中添加如下: <plugins> < ...
- maven跳过测试编译命令
mvn clean install/package/deploy -Dmaven.test.skip=true
- maven install 跳过 测试 test
你可能想要配置 Maven 使其完全跳过单元测试. 可能你有一个很大的系统,单元测试需要花好多分钟来完成,而你不想在生成最终输出前等单元测试完成. 你可能正工作在一个遗留系统上面,这个系统有一系列的失 ...
- Maven配置插件跳过测试代码的编译和运行
Maven配置插件跳过测试代码的编译和运行: <!-- 编译插件 --> <plugin> <groupId>org.apache.maven.plugins< ...
- maven打包如何跳过测试
Maven打包如何跳过测试?正常来说,不应该这样做,因为测试可以避免很多麻烦排除一些不必要的错误,前提是测试足够规范,这里主要指junit测试,如果junit测试有问题的话,将会直接影响到mvn in ...
- maven 设置跳过测试
1.在执行mvn命令时增加以下参数可以跳过测试: -DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下. -Dmaven.test ...
- Java开发学习(三十二)----Maven多环境配置切换与跳过测试的三种方式
一.多环境开发 我们平常都是在自己的开发环境进行开发, 当开发完成后,需要把开发的功能部署到测试环境供测试人员进行测试使用, 等测试人员测试通过后,我们会将项目部署到生成环境上线使用. 这个时候就有一 ...
随机推荐
- springboot(二):bootstrap和application有什么区别?
“SpringBoot专注于快速方便的开发单个个体微服务. SpringCloud是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来, 为各个服务之间提供 ...
- 熔断器Hystrix及服务监控Dashboard
服务雪崩效应 当一个请求依赖多个服务的时候: 正常情况下的访问 : 但是,当请求的服务中出现无法访问.异常.超时等问题时(图中的I),那么用户的请求将会被阻塞. 如果多个用户的请求中,都存在无法访问的 ...
- ViewAnimator
ViewAnimator是一个基类,它继承了FrameLayout,因此它表现出FrameLayout的特征,可以将多View组件叠在一起.ViewAnimator额外增加的功能正如它的名字所暗示的, ...
- SSM案例整合踩的一些坑
一.出现错误:Cannot convert value of type [java.lang.String] to required type [javax.sql.DataSource] for p ...
- 八、VTK安装并运行一个例子
一.版本 win10 VS2019 VTK8.2.0 其实vtk的安装过程和itk的安装过程很是类似,如果你对itk的安装很是熟悉(也就是我的博客一里面的内容,那么自己就可以安装.) 如果不放心,可以 ...
- python文件的使用
文件是一个存储在辅助存储器上的数据序列,可以包含任何数据内容.概念上,文件是数据的集合抽象,类似地,函数是程序的集合和抽象.用文件形式组织和表达数据更有效也更为灵活.文件包括两种类型:文本文件和二进制 ...
- java获取当前年份、月份和日期字符串等
Java获取当前年份.月份和日期是通过Calendar类的实例对象来获取的. 首先创建一个Calendar类的实例对象,Calendar类属于java.util包. Calendar calendar ...
- vue路由传参和获取参数
参考链接 https://router.vuejs.org/zh/guide/essentials/passing-props.html#%E5%B8%83%E5%B0%94%E6%A8%A1%E5% ...
- ubuntu18.04 安装 flameshot截图工具
安装flameshot:https://github.com/lupoDharkael/flameshot sudo apt-get install flameshot 然后设置一个快捷键,设置> ...
- 一种简单实现Redis集群Pipeline功能的方法及性能测试
上一篇文章<redis pipeline批量处理提高性能>中我们讲到redis pipeline模式在批量数据处理上带来了很大的性能提升,我们先来回顾一下pipeline的原理,redis ...