【发布时间】:2016-03-13 02:51:26
【问题描述】:
我需要运行一些集成测试和一些单元测试,我正在使用 spring、gradle 和 jUnit 4。
我使用了 jUnit 类别 @Category(UnitTestCategory.class) 和 @Category(IntegrationTestCategory.class) 并添加了
test {
useJUnit {
includeCategories 'org.gradle.junit.CategoryA'
excludeCategories 'org.gradle.junit.CategoryB'
}
}
用于 gradle 以包含/排除一个类别。我的想法是我不想混合单元测试和集成测试,我为它们每个都有一个类别。
问题是我必须同时使用 spring 和 categories 并且 @RunWith(...) 只能接收一个 class param. - RunWith(SpringJUnit4ClassRunner.class) 或 @RunWith(Categories.class) 。
我不能使用@RunWith({Categories.class, SpringJUnit4ClassRunner.class}),我必须使用 spring 和类别运行。另外,将来我可能还需要添加其他类,不仅是 spring 和 category。所以我需要 @RunWith(...) 的多个参数
https://docs.gradle.org/current/userguide/java_plugin.html
请问有人有解决办法吗?
【问题讨论】:
-
如果您使用 Gradle 运行测试,则不必使用
@RunWith(Categories.class)。仅当您想使用可以在 IDE 中启动的特殊套件时,才需要Categories运行器。 -
是的,但是我有两个测试类别集成测试和单元测试,我不想混合使用它们。我只想在 gradle 中使用 includeCategories / excludeCategory 运行一个类别。
标签: java spring gradle junit mockito