如何用maven运行特定的test case

如题所述

最近碰到了一些特殊的问题,有些test case在IDE里面运行是可以pass的,但通过Maven运行就一定会出问题。这里不深入讨论,这类测试一般都是和entity manager有关的。今天记录一下在这过程中,maven的一些测试特性:如何用Maven运行特定的test case。

运行一个单独的test

在开发过程中,你有可能需要重复的单独运行一个test class。要用mavan做到这个,需要把test属性设为你想要的test class的名字。(不需要后缀名,如果不小心添加了,也会被mvn去掉)

mvn -Dtest=TestCircle test
1
如果你pom.xml里面的surefile plugin配置了多个测试层级,有可能你只想执行默认的测试层级:

mvn surefire:test -Dtest=TestCircle
1
你还可以用表达式来运行一组测试:

mvn -Dtest=TestCi*le test
1
或者用多个名字/模式,只需要用逗号把他们分开:

mvn -Dtest=TestSquare,TestCi*le test
1
运行单个test class中的一组测试

在maven-surefire-plugin的2.7.3之后, 你可以运行单个test class中的特定test,语法如下:

(NOTE : 这个功能只能支持Junit 4.x和TestNG)

mvn -Dtest=TestCircle#mytest test
1
当然还是可以用模式:

mvn -Dtest=TestCircle#test* test
1
在Surefire Plugin 2.19之后,你还可以这样写:(JUnit 4, JUnit 4.7+ 以及 TestNG):

mvn -Dtest=TestCircle#testOne+testTwo test
1
支持多格式的模式

在Surefire Plugin 2.19之后,你甚至可以在一条模板中用多种格式: (JUnit 4, JUnit 4.7+, TestNG):

mvn "-Dtest=???Test, !Unstable*, pkg/**/Ci*leTest.java, *Test#test*One+testTwo?????, #fast*+slowTest" test
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-07-28
是指不知道包在哪儿?可以看一下你eclipse里配置的maven路径是哪儿,然后去找到setting.xml,看看里面配置的仓库路径,所有包都在那里。本回答被网友采纳

如何用maven运行特定的test case
mvn -Dtest=TestCi*le test 1 或者用多个名字\/模式,只需要用逗号把他们分开:mvn -Dtest=TestSquare,TestCi*le test 1 运行单个test class中的一组测试 在maven-surefire-plugin的2.7.3之后, 你可以运行单个test class中的特定test,语法如下:(NOTE : 这个功能只能支持Junit 4.x和TestNG)mv...

maven是怎么运行junit的
打开项目,双击pom.xml文件,添加如下代码后保存,然后maven install一下,引入JUnit对应的jar包。<dependency><groupId>junit<\/groupId><artifactId>junit<\/artifactId><version>4.11<\/version> <\/dependency>2.选中你要测试的那个类,右击 new --> other --> junit test case 3然后点击next ...

如何让maven跳过某些指定的Test用例
忽略单元测试失败: $ mvn test -Dmaven.test.failure.ignore=true 跳过单元测试: mvn install -Dmaven.test.skip=true

如何让maven跳过某些指定的Test用例
(实例):<plugin> <groupId>org.apache.maven.plugins<\/groupId> <artifactId>maven-surefire-plugin<\/artifactId> <version>2.17<\/version> <configuration> <includes> <include>**\/TestMe.java<\/include> <include>**\/TestYou.java<\/include> <\/includes> <excludes> <exclude>**\/TestOne.j...

如何让maven跳过某些指定的Test用例?
<properties> <maven.test.skip>true<\/maven.test.skip> <maven.test.failure.ignore>true<\/maven.test.failure.ignore> <\/properties> <plugin> <groupId>org.apache.maven.plugins<\/groupId> <artifactId>maven-surefire-plugin<\/artifactId> <configuration> <skip>${maven.test.skip...

关于在IDEA中使用maven的运行test目录下的main方法无法找到类的?
pom.xml 报错先调试好 测试类需要继承TestCase 编译后\\target\\test-classes下面要有class和测试需要的资源文件,就需要在pom.xml中加 <build><testResources><testResource><directory>src\/main\/resources<\/directory><filtering>true<\/filtering><\/testResource><\/testResources><\/build> ...

怎么使用maven package命令
如何用maven打包可执行的jar 方法一:将项目及所依赖的所有jar包打包成一个jar。1、pom.xml添加assembly插件 2、执行mvn assembly:assembly 3、生成如文件 4、执行java -jar quickstart-1.0.0-jar-with-dependencies.jar 备注:第2步的命令也可以改成mvn package,但需要更改pom.xml:方法二:将项目...

如何执行maven打包命令
打包目标类型:默认情况下,Maven 打包会生成一个 JAR 文件。但是,您可以使用 -Dpackaging 选项指定不同的目标类型,例如 WAR 或 EAR。指定配置文件:可以使用 -P 选项指定要使用的配置文件。例如:mvn package -P productionMaven 包装阶段:打包命令会执行一系列 Maven 阶段,包括 compile、test 和 ...

java manven项目运行test问题
1、不同版本的tomcat对应的web.xml头描述是不一样的,这就是造成在保存web.xml的时候出现卡顿的情况。2、关闭jdk源代码和对应版本的帮助文档;在jdk源代码目录很多时候卡是因为这儿的默认源代码目录是oracle官方的在线文档链接,所以会卡一会儿,改成本地的就好了 可参考 http:\/\/help.eclipse.org\/luna...

【自学】maven教程3-执行构建命令
mvn test:运行测试代码,测试报告存放在target\/surefire-reports。 mvn package:进行打包操作,生成的jar包存放在target目录。 mvn install:安装到本地仓库,jar包和pom.xml文件(转换为XXX.pom)一起存储。 mvn dependency:tree:查看项目依赖树,了解项目间的依赖关系。在Maven项目中,scope标签用于...

相似回答