我在应用程序中有我的配置。类路径根中的yml文件(src/main/resources/)。当我正常启动应用程序时,配置加载良好。然而,在我的测试中,应用程序。yml文件根本没有加载。
我的测试的标题如下所示:
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(classes = Configuration.class)
@org.junit.Ignore
public class ApplicationIntegrationTest {
@Inject
private WebApplicationContext wac;
private MockMvc mockMvc;
@Before
public void setup() {
this.mockMvc = MockMvcBuilders.webAppContextSetup(this.wac).build();
}
...
配置类:
@EnableAutoConfiguration
@ComponentScan("c.e.t.s.web, c.e.t.s.service")
public class Configuration extends WebMvcConfigurerAdapter {
当我调试应用程序时,我看到yml文件被加载到ConfigFileApplication ationListener中,但在测试中没有调用ConfigFileApplication ationListener。
StringBoot、jUnit和YAML之间有很好的集成。
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(MainBootApplication.class)
public class MyJUnitTests {
...
}
@Configuration
@EnableConfigurationProperties
@ConfigurationProperties(prefix = "section1")
public class BeanWithPropertiesFromYML {
...
}
有关更多详细信息,请查看我的评论:https://stackoverflow.com/a/37270778/3634283
Spring Boot参考指南中有一整章是关于测试的。本节解释了如何为Spring Boot应用程序进行基本测试。
简而言之,当使用Spring Boot时,您需要使用SpringApplicationConfiguration注释,而不是ContextConfiguration注释。SpringApplicationConfiguration是一个专门的ContextConfiguration扩展,它还为测试用例注册/引导一些Spring Boot魔法。
问题内容: 我需要从文件加载属性,该文件包含应用程序可以从中读取文件的文件夹的路径。 我正在使用以下代码来注入属性: 用于开发的文件位于下,在生产环境中使用以下命令运行应用程序,以覆盖开发设置: Spring Boot文档说: SpringApplication将在以下位置从application.properties文件加载属性,并将其添加到Spring Environment中: 当前目录的/
我需要从文件加载一个属性,该文件包含应用程序可以从中读取文件的文件夹的路径。 当前目录 类路径/配置包 类路径根 是否必须使用类或添加一个特殊注释来启用Spring Boot中对的支持? 编辑:文件包含一些其他属性,这些属性由Spring Boot成功加载,如或。
在Spring,如果我们有两个.yaml文件作为。(包含在应用程序中) 如果这个配置的属性类类似于- 则仅从一个文件加载“流”,即流。size()给出2.(remote04,remote05。这取决于application.yaml中配置文件的顺序) 但如果我将yamls文件更改为- 和属性类 现在hashmap将有4个条目。i、 e.流量。size()给出4 那么,这是否意味着Spring不会从
文件可以从相对于省道脚本文件的目录中读取,简单地称为。 但是,在IDE中运行的颤振测试无法读取该文件。 加载为资源(不是,因为我不想在应用程序中捆绑测试数据文件)在测试中也不起作用。 在flatter中读取文件的好方法是什么(对于命令行测试和IDE测试)? 运行非常快。然而,IntellijIDE内部的测试速度非常慢,但它可以设置调试断点并单步执行和查看变量。所以这两种测试都非常有用。
使用Spring Boot 1.3.0.Release 编辑:一种工作方法是手动操作:
嗨,我有一个Spring Boot(2.1.6发行版)应用程序,我正在尝试添加一些简单的集成测试到我的应用程序。首先,我创建了一个基础IntegrationTest类,如下所示: 这是我的测试方法: 有什么建议吗?