Spring Boot с Gradle и плагином Jacoco
Когда я добавил плагин Jacoco в свой проект apply plugin: "jacoco"
, И тогда модульные тесты с интеграцией базы данных не работают.
Конфигурация источника данных Spring (application.yml):
spring:
profiles: test
datasource:
driver-class-name: org.postgresql.Driver
password: postgres
testWhileIdle: true
url: jdbc:postgresql://localhost:5432/atol-test
username: postgres
validationQuery: SELECT 1
Я использую 1.3.6.RELEASE версию весенней загрузки, и я настроил Jacoco следующим образом:
jacoco {
toolVersion = "0.7.6.201602180812"
reportsDir = file("$buildDir/customJacocoReportDir")
}
jacocoTestReport {
reports {
xml.enabled false
csv.enabled false
html.destination "${buildDir}/jacocoHtml"
}
}
Когда я хочу запустить модульный тест Stacktrace дает мне:
org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (the profiles "test" are currently active).
at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.getDriverClassName(DataSourceProperties.java:180)
at org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration$NonEmbeddedConfiguration.dataSource(DataSourceAutoConfiguration.java:121)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
Кто-нибудь знает, что происходит (как я уже говорил - без Jacoco все работает)?