如何在具有Junit5和CitrusExtension的全局上下文中使用porperty文件中的值
也许我走错了方向,或者完全误解了什么 我将Citrus IntegrationTest从Junit4Runner合并到Junit5(使用CitrusExtension) 有一个EndpointConfiguration类 还有一个测试类如何在具有Junit5和CitrusExtension的全局上下文中使用porperty文件中的值,junit,properties,junit5,citrus-framework,Junit,Properties,Junit5,Citrus Framework,也许我走错了方向,或者完全误解了什么 我将Citrus IntegrationTest从Junit4Runner合并到Junit5(使用CitrusExtension) 有一个EndpointConfiguration类 还有一个测试类 @ExtendWith(CitrusExtension.class) @RunWith(JUnitPlatform.class) public class BaseIT{ @CitrusEndpoint protected HttpClient
@ExtendWith(CitrusExtension.class)
@RunWith(JUnitPlatform.class)
public class BaseIT{
@CitrusEndpoint
protected HttpClient httpClient;
@Value("${rest.session}") //defined in service-paths.properties
private String sessionPath;
}
在测试类中,我希望访问service-path.properties文件中定义的值。
这对JUnit4有效,但在对JUnit5进行更改之后,这些属性似乎不再在“全局”上下文中可用。
将日志级别改为“调试”将显示已加载属性文件
所以我的问题是:为了访问IT类中的服务路径属性,我需要更改什么。我遗漏了什么,这种情况下的最佳实践是什么
提前感谢您的反馈。通过
@value
注释解析属性值是Spring框架的核心功能。因此,您需要将SpringExtension添加到JUnit5测试中。除了使用CitrusExtension,您还可以执行此操作
@ExtendWith(CitrusExtension.class)
@RunWith(JUnitPlatform.class)
public class BaseIT{
@CitrusEndpoint
protected HttpClient httpClient;
@Value("${rest.session}") //defined in service-paths.properties
private String sessionPath;
}