2016-12-16 72 views
1

我在我的類路徑中有一個含有少量INSERT語句的import.sql文件。當使用profile = devel運行我的應用程序時,它的數據被加載到一個postgres數據庫中,目前爲止還不錯。如何防止在Spring中執行import.sql引導單元測試

使用測試配置文件執行測試時,import.sql也會觸發導入,導致「找不到表」異常。不知道這裏的原因是什麼,但我不想將這些數據用於測試。

我該如何解決這個問題?爲測試配置文件設置hibernate.ddl-auto = none似乎並不是一個解決方案,因爲它也阻止了該模式的生成。

回答

1

我想我發現,更好地滿足我一個解決方案:

根據http://docs.spring.io/spring-boot/docs/current/reference/html/howto-database-initialization.html有可能提供inits數據庫與數據data.sql文件。通常這會在每個配置文件中找到,從而用給定的測試數據填充測試或生產環境 - 不太好!

爲了防止出現這種情況,我將其重命名爲populate_db.sql,並且僅爲devel配置文件設置spring.datasource.data=populate_db.sql

+0

這並沒有解決問題,重命名,所以不會在開發模式下執行文件,這將需要運行 –

相關問題