gradle与maven的<scope> test </scope>类似吗?

时间:2019-12-08 20:22:55

标签: spring-boot maven unit-testing gradle h2

当我只想使用h2内存db进行单元测试时,在maven情况下,请使用以下定义:

<dependency>
      <groupId>com.h2database</groupId>
      <artifactId>h2</artifactId>
      <scope>test</scope>
  </dependency>

应用程序运行时我不需要h2

为此目的,gradle的模拟是什么?

1 个答案:

答案 0 :(得分:2)

H2可能仅在运行时由您的测试需要,也就是说,您的测试类不会针对任何H2类进行编译。在这种情况下,您应该使用testRuntimeOnly配置:

dependencies {
    testRuntimeOnly 'com.h2database:h2'
}

对于需要编译您的测试类的依赖项,应改为使用testImplementation配置。