我无法进行单元测试以阅读application.yml。我已经按照下面的网址给出了答案,但它仍然无法正常工作。
Spring Boot properties in 'application.yml' not loading from JUnit Test
感谢有人可以提供帮助。感谢。
我的代码如下:
Application.java
@SpringBootApplication
@ImportResource("classpath:app-config.xml")
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
TestTokenGenerator.java
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes=Application.class, initializers=ConfigFileApplicationContextInitializer.class)
@ContextConfiguration(locations={"classpath:app-config-test.xml"})
public class TestTokenGenerator {
private static final Logger log = LoggerFactory.getLogger(TestTokenGenerator.class);
@Value("${test}")
private String testB;
@Test
public void testGenerate() throws UnrecoverableKeyException, KeyStoreException, NoSuchAlgorithmException, CertificateException, IOException{
log.info(testB);
log.info(tokenGenerator.generateToken());
}
application.yml
test: "123123"
答案 0 :(得分:1)
例如,请参阅此问题的评论https://github.com/spring-projects/spring-boot/issues/603。
声明@ContextConfiguration和 直接在测试类上的@SpringApplicationConfiguration不是 支持的。 @ContextConfiguration的第一个实例是 为给定的测试类发现(在测试类中的类上) 将使用层次结构或作为元注释。所有其他人都将 忽略。