2017-08-13 59 views
5

我有一個春天啓動的項目和它的偉大工程。我現在想爲我的應用程序編寫測試,並且遇到一些配置問題。春天開機測試 - 找不到測試性能

春季啓動創造了我的測試類叫做ApplicationTests。這是真實簡單,它看起來像這樣:

@RunWith(SpringRunner.class) 
@SpringBootTest 
public class DuurzaamApplicationTests { 
    @Test 
    public void contextLoads() { 
    }  
} 

現在,當我開始測試我得到這個錯誤:

java.lang.IllegalArgumentException: Could not resolve placeholder 'company.upload' in value "${company.upload}" 

我在src /測試/資源目錄中的文件properties.yml和由於某種原因它沒有加載。我已經嘗試了來自互聯網上的示例的所有不同類型的註釋,但它們都不起作用。

我怎樣才能知道春天開機測試使用application.yml文件從裝載的屬性?

回答

3

我們可以使用@TestPropertySource@PropertySource加載屬性文件

@RunWith(SpringRunner.class) 
@SpringBootTest 
@TestPropertySource("classpath:properties.yml") 
@ActiveProfiles("test") 
public class DuurzaamApplicationTests { 
    @Test 
    public void contextLoads() { 
    }  
} 

文檔:https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/test/context/TestPropertySource.html

+1

不工作。我仍然獲得「價值無法解析佔位符‘company.upload’‘$ {} company.upload’我有位於src /測試/資源目錄的application.yml。 –

+0

你能共享項目在主旨或混帳? – Barath

+0

或在src /主/資源,默認情況下springboot定義應用程序test.yml值包括測試配置文件中運行測試 – Barath