首页 > 解决方案 > 如何在 Maven Build 上运行 CamelTest 单元?

问题描述

我用 Spring 和 Maven 在 Apache Camel 中创建了 2 个测试类(1 个有 30 个测试用例,另一个有 10 个测试用例)。其中一个测试类工作正常,如果我使用 Maven 构建,它就会运行。

mvn test<- 适用于一个测试类

mvn package<- 也适用于一个测试类

但是另一个测试类没有运行。两者都在src/test/java 而且两个测试类都在target/test-classes/... 一个不同的是在target/test-classes/...非工作类中有第二个文件...Test$1.class在同一个文件夹中。但我无法打开它。

还有一秒不同的类:非工作类从 CamelTestSupport 扩展而来,是一个 junit4。工作测试类来自junit5。

我认为 maven-surefire-plugin 找不到 junit4 测试类。但是我怎样才能让 maven-surefire-plugin 找到 junit4 测试类?

标签: javamavenjunitapache-camelmaven-surefire-plugin

解决方案


JUnit 4 测试必须使用 JUnit 的 Vintage 引擎执行,而 JUnit 5 测试必须使用 Jupiter 引擎执行。

请参阅this answer如何配置 POM 以根据 surefire 插件的版本使用这两种引擎。


推荐阅读