我有一个QUKUS项目,它有一个test
源代码文件夹和一个Native-test
文件夹。指导似乎是我在Native-test
文件夹中会有很多相同的测试(特别是@QUKusIntegrationTest
s)。有没有办法指定在test
中使用与Native-test
相同的源代码集?
一个人可能想要在另一个源代码集中进行不同的测试是有道理的,但是对我来说,必须跟踪两个源代码集之间的相同测试似乎很乏味。有没有办法告诉nativeTest
任务使用来自test
源代码集的测试?这是我想要的吗?我是否正确地可视化了这些测试的目的?
我假设我可以在Gradle中设置一些脚本,以便在testNative
运行时将相关测试复制到native-test
目录,但这感觉很hacky。
nativeTest
任务继承自Test
任务,因此您应该能够将其配置为test
任务。
您可能面临的一个问题是gradle test
将使用默认打包运行@QuarkusIntegrationTest
(这可能需要时间)。gradle nativeTest
将运行所有测试事件@QuarkusTest
。
在任务配置中使用include
/排除
可能会导致您想要的:
nativeTest {
testClassesDirs = project.sourceSets.nativeTest.output.classesDirs
include '**/it/*'
}
test {
exclude '**/it/*'
}
gradle test
将运行来自src/test/java
的所有测试,排除it
包中的测试。gradle nativeTest
只会运行位于it
包中的src/test/java
的测试。