1. 单测相关
1. 执行单测
mvn test
1.执行某个包的单测
mvn test -Dtest=[pakageName]
## 范例
mvn test -Dtest='com/test'
2.执行某个测试类
mvn test -Dtest=[ClassName]
## 范例。 这里可以不是全类名
mvn test -Dtest=MyTest
3.执行某个测试方法
mvn test -Dtest=[ClassName]#[MethodName]
## 范例。 这里可以不是全类名
mvn test -Dtest=MyTest.aMethod
注意1:通配符问题
如果在命令行中使用 -Dtest=*Test 匹配模式时出现提示 “no matches found: -Dtest=*Test”,可能是因为当前的 Shell(如 Windows 的命令提示符或 Git Bash)对通配符的解析方式不同。
在 Windows 命令行
中,通配符 * 需要使用双引号括起来,如 mvn test -Dtest=“*Test”。这样,* 才会被正确地传递给 Maven,并进行测试类的匹配。
而在类 Unix 环境的 Shell
(如 Git Bash、Linux 或 macOS 的终端)中,使用单引号或不使用引号的方式都可以匹配到测试类,如 mvn test -Dtest=*Test 或 mvn test -Dtest=‘*Test’。
注意2:当指定了测试范围,且某个模块内没有匹配到对应的单测,会报错。
加上以下参数即可。
-Dsurefire.failIfNoSpecifiedTests=false
##范例
mvn test -Dtest='com/xx/a/facade/*' -Dsurefire.failIfNoSpecifiedTests=false
2. 跳过单元测试
mvn install -DskipTests
或者
mvn install -Dmaven.test.skip=true