java - @RunWith 导致 Maven 忽略我用自己的运行者运行的测试

标签 java maven-2 junit surefire

我正在从仅使用 Intellij 管理我的构建系统转向使用 Intellij/Maven。当我通过@RunWith(KmlParameterizedRunner.class) 使用我自己的运行器运行我的集成测试“MapSimulationTest”时,Intellij 正确处理了这种情况,扫描了系统属性“user.dir”指定的目录中的 .kml 文件,并对每个文件进行了测试。

问题似乎是 Surefire 忽略了@RunWith,有什么建议吗?

这是 Maven 日志显示的内容...

------------------------------------------------------- T E S T S ------------------------------------------------------- Running com.tqicorp.guru.MapSimulationTest Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.061 sec

最佳答案

我在 Spring 中使用 surefire 和 @RunWith测试运行器,它与 Maven 2.2.1 一起工作正常。

要找出问题所在,您可以尝试使用@Test 批注创建一个简单的 Junit 测试,而不是使用旧式的 testXXX 方法。运行“mvn test”并查看您的测试是否正在执行。如果是,那将排除您路径中旧 junit 的任何可能性。如果它没有被执行,那么运行“mvn site”,并搜索 junit 的依赖报告,并检查版本。令人惊奇的是,不需要的版本是多么容易潜入!

关于java - @RunWith 导致 Maven 忽略我用自己的运行者运行的测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2717902/

相关文章:

eclipse - 如何正确地将 Maven 项目导入到 Eclipse?

android - Robolectric 由于调用存储而从 NullPointerException 失败

java - 如果我想使用 JUnit,是否禁止使用 AssertionErrors?

java - 上传到 S3 的单元测试

java - 将 MySQL 连接器 JAR 放在我的 WAR 的 WEB-INF/lib 中而不是在 $CATALINA_HOME/common/lib 中?

maven-2 - 为什么我的 Maven 在 Ubuntu 上这么慢?

java - 制作包含测试文件的 Gradle 项目

java - 使用Maven指定Java编译版本的功能

java - 使用 AssetManager.list 列出子目录中的 Assets

java - 从 Java 构造函数内部调用私有(private)方法