Java Junit5标记注释与Quarkus QuarkUstSource注释一起
QuarkSource如何与标记注释结合使用 示例测试例程Java Junit5标记注释与Quarkus QuarkUstSource注释一起,java,integration-testing,junit5,quarkus,maven-surefire-plugin,Java,Integration Testing,Junit5,Quarkus,Maven Surefire Plugin,QuarkSource如何与标记注释结合使用 示例测试例程 import org.junit.jupiter.api.Tag; 导入org.junit.jupiter.api.Test; 导入io.quarkus.test.common.QuarkUstResource; 导入io.quarkus.test.junit.QuarkusTest; @夸克斯特 @标签(“集成”) @QuarkusTestResource(DatabaseResource.class) 公共类MyTest{ @试验
import org.junit.jupiter.api.Tag;
导入org.junit.jupiter.api.Test;
导入io.quarkus.test.common.QuarkUstResource;
导入io.quarkus.test.junit.QuarkusTest;
@夸克斯特
@标签(“集成”)
@QuarkusTestResource(DatabaseResource.class)
公共类MyTest{
@试验
公共空间(){
宠儿们。。。
}
}
Maven代码段:
1.12.1.Final
夸克宇宙物质清单
夸克斯
1.12.1.最终版本
2.22.1
单元
...
maven surefire插件
${surefire plugin.version}
${testscope}
org.jboss.logmanager.logmanager
${maven.home}
...
Maven命令:
./mvnw clean test
结果:即使没有用“单位”注释QuarkUstTest,QuarkUstResource也会启动,因此Quarkus似乎不知道标记注释?Quarkus测试资源是全局的,这意味着它无论如何都会运行,即使您的类用不应该运行的标记注释 要防止出现这种情况,请尝试使用
@QuarkusTestResource(restrictToAnnotatedClass = true)
从
测试资源是全局的,即使它们是在测试类或自定义概要文件上定义的,这意味着它们都将为所有测试激活,即使我们确实删除了重复项如果您只想在单个测试类或测试配置文件上启用测试资源,可以使用@QuarkusTestResource(restrictToAnnotatedClass=true)。
您正在寻找的可能是
QuarkusTestProfile
的标记方法。请参阅部分文档