弹簧集成测试:无法检测默认资源位置
我正在使用Maven的Falsureafe插件为我的Spring Boot应用程序运行集成测试。当我创建一个简单的测试时,比如这个:
@RunWith (SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(App.class)
public class MyTestIT {
@Test
public void test() {
assertTrue (true);
}
}
然后运行我在Spring应用程序启动之前(例如,甚至在Spring Boot横幅之前)看到以下日志条目:mvn verify
Running org.....MyTestIT
2016-04-14 13:25:01.166 INFO ???? --- [ main]
or.sp.te.co.su.AbstractContextLoader :
Could not detect default resource locations for test class
[org....MyTestIT]: no resource found for suffixes
{-context.xml, Context.groovy}.
2016-04-14 13:25:01.175 INFO ???? --- [ main]
or.sp.te.co.su.DefaultTestContextBootstrapper :
Loaded default TestExecutionListener class names from location [META-INF/spring.factories]: [org.springframework.test.context.web.ServletTestExecutionListener, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener, org.springframework.test.context.support.DependencyInjectionTestExecutionListener, org.springframework.test.context.support.DirtiesContextTestExecutionListener, org.springframework.test.context.transaction.TransactionalTestExecutionListener, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener]
2016-04-14 13:25:01.185 INFO ???? --- [ main]
or.sp.te.co.su.DefaultTestContextBootstrapper : Using TestExecutionListeners: [org.springframework.test.context.web.ServletTestExecutionListener@57c758ac, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@a9cd3b1, org.springframework.test.context.support.DependencyInjectionTestExecutionListener@13e39c73, org.springframework.test.context.support.DirtiesContextTestExecutionListener@64cd705f, org.springframework.test.context.transaction.TransactionalTestExecutionListener@9225652, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener@654f0d9c]
其次是Spring Boot横幅。然后,测试将运行完毕,而不会出现任何错误。虽然这些消息是用INFO日志级别打印的,并且测试运行良好,但我想一切都很好,但我仍然觉得这些消息令人讨厌。那么我的配置有问题吗?我应该担心这些消息吗?
即使没有错,我仍然想了解那里发生了什么以及消息的含义。
My 只是使用默认配置,而 my 只是一个用 .maven-failsafe-plugin
App.java
@SpringBootApplication
更新 1:
这是我的测试插件的配置:
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<!-- Ignore any tests that are marked by the @IntegrationTest annotation of Spring Boot -->
<excludedGroups>org.springframework.boot.test.IntegrationTest</excludedGroups>
</configuration>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.19.1</version>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
</executions>
</plugin>
我还配置了一个依赖项,并且我正在使用.除此之外,其他一切都与测试无关。spring-boot-starter-test
spring-boot-devtools
它自己的项目非常标准,使用hibernate和mysql以及web-mvc作为休息端点。我在类通行证上有两个用于弹簧安全性的配置类。
在文件夹中,我有一个文件和一个log4j2.xml。没有文件夹,但是当我只是将主/资源文件夹复制到上面的日志消息时仍然出现。main/resources
application.properties
test/resources
test/resources
更新 2:我刚刚创建了一个试图重新创建问题的小示例应用程序,似乎一旦我将文件放入资源文件夹,所提到的日志输出就会开始出现。我尝试将其放入或或两者兼而有之,具有相同的效果。log4j2.xml
src/main
src/test