Maven/Surefire 发现没有要运行的测试
据我所知,测试文件位置是正确的。
当我运行“mvn test”时,它找到四个名为SomethingTest的类(它们位于“test”文件夹中)。
但是,它忽略了任何 jUnit 测试(jUnit 4,用 @Test 注释)。
如何调试它?
编辑 - 这可能与包含错误版本的jUnit有关。我在运行“mvn -X”时看到这一点
[DEBUG] Retrieving parent-POM: org.codehaus.plexus:plexus:pom:1.0.4 for project: org.codehaus.plexus:plexus-containers:pom:1.0.3 from the repository.
[DEBUG] org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:runtime (selected for runtime)
[DEBUG] junit:junit:jar:3.8.1:runtime (selected for runtime)
[DEBUG] org.codehaus.plexus:plexus-utils:jar:1.0.4:runtime (removed - nearer found: 1.4.1)
[DEBUG] classworlds:classworlds:jar:1.1-alpha-2:runtime (selected for runtime)
尽管我在根 pom 中的第一个依赖项是 jUnit 4.8.1,但由于某种原因,jUnit 3.8.1 被包括在内。
编辑2 - 好吧,这似乎不是答案。测试类路径包括正确的 jUnit (4) 和我的测试类。
编辑3 - 我有名为SomethingTester的测试类。当我把它改成SomethingTest时,它起作用了。我检查了 Surefire 的包含模式,实际上它没有配置为捕获 Something Tester。哎呀。